原生ajax如何跨域,原生ajax 如何解决cors跨域问题

这篇博客探讨了在没有后端支持的情况下,如何处理使用原生Ajax进行CORS跨域请求时遇到的'Origin 不允许'的问题。文中提供了一个使用Promise封装的Ajax函数示例,并讲解了如何修改请求头来实现跨域。重点在于理解CORS的工作原理和如何在Ajax请求中设置适当的头部信息。
摘要由CSDN通过智能技术生成

用原生ajax请求进行cors跨域问题 他会显示origin不允许 没有后端支持的情况下怎么写ajax请求头啊。因为可能用到微信小程序,就最好不用第三方库。救救孩子 下面使用promise封装的ajax 要怎么改请求头

function ajax(options) {

//这个options时传入给ajax的配置参数

return new Promise((resolve, reject) => {

//返回一个promise对象 resolve成功是的处理,reject失败时的处理

if (!options.url) { // 需要请求的路径

console.log("请确认你的url路径");

return;

}

let method = options.method || "GET"; //请求方式如果没有就默认为get

let async = options.async || true; //ajax是否异步请求默认位true

let xhr = new XMLHttpRequest();

if (method === "GET") {

xhr.open(method, options.url + "?" + Math.random(), async); //防止缓存

xhr.send(null);

} else if (method === "POST") {

xhr.open(method, options.url, async);

xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

xhr.send(options.data);

}

// xhr.responseType = options.type || "";

xhr.onreadystatechange = () => {

if (xhr.responseText) {

//有数据说明相应成功

resolve(xhr.responseText);

}

};

xhr.onerror = err => {

reject(err);

};

}).catch(e => {});

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值