JavaScript 原生封装 ajax
2021-07-25 本文已影响0人
张思学
与UE4客户端联调,因安全原因把网页所需文件放入客户端项目中,不想引入外部文件以及json库。自己封装一个ajax,因需求只用到了post和get请求,大家可以在扩展
/* AJAX
* 参数
* method 请求类型
* url 请求路径(get请求参数直接以?拼接在链接上)
* params 参数 {}
* fn 请求成功回调函数
*/
function ajax(method, url, params, fn) {
var ajx = new XMLHttpRequest();
ajx.open(method, url);
if (method === 'post') {
ajx.setRequestHeader('content-type', 'application/json');
ajx.send(JSON.stringify(params));
}
if (method === 'get') {
ajx.send();
}
ajx.onreadystatechange = () => {
if (ajx.readyState == 4) {
if (ajx.status == 200) {
fn(ajx.responseText);
}
}
};
}