我是靠谱客的博主 瘦瘦月饼,最近开发中收集的这篇文章主要介绍XMLHttpRequest 的封装,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

function get(url,data){
return new Promise((resolve,reject)=>{
var params = '';
Object.keys(data).forEach((item)=>{
params += '&'+data[item]
})
params = params.replace('&',"?")
var XMLHttp = new XMLHttpRequest()
XMLHttp.open('GET',url+params,true)
// XMLHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded")
XMLHttp.send()
XMLHttp.onreadystatechange = ()=>{
if(XMLHttp.readyState === 4 && XMLHttp.status === 200){
try{
resolve(JSON.parse( XMLHttp.responseText) )
}catch(err){
reject(err.message)
}
}else if(XMLHttp.readyState === 4 && XMLHttp.status !== 200){
console.log(XMLHttp.status)
reject('请求失败')
}
}
})
}
function post(url,data){
return new Promise((resolve,reject)=>{
var XMLHttp = new XMLHttpRequest()
XMLHttp.open('POST',url,true)
XMLHttp.setRequestHeader('content-type','application/json')
XMLHttp.send(JSON.stringify(data))
XMLHttp.onreadystatechange = ()=>{
if(XMLHttp.readyState === 4 && XMLHttp.status === 200){
try{
resolve(JSON.parse( XMLHttp.responseText) )
}catch(err){
reject(err.message)
}
}else if(XMLHttp.readyState === 4 && XMLHttp.status !== 200){
reject('请求失败')
}
}
})
}

最后

以上就是瘦瘦月饼为你收集整理的XMLHttpRequest 的封装的全部内容,希望文章能够帮你解决XMLHttpRequest 的封装所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部