前后端分离ajax出现两次请求,前后端分离,ajax跨域请求,2次请求

在前后端分离的开发中,遇到Ajax请求出现两次问题,主要是跨域策略引起的。首次请求为OPTIONS预检,确保安全,第二次才是实际数据请求。解决跨域需后端设置响应头'Access-Control-Allow-Origin'等,允许特定或所有来源。OPTIONS请求成功后,实际请求才会执行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

参考

https://blog.youkuaiyun.com/charleslei/article/details/51906635

https://blog.youkuaiyun.com/kejmln/article/details/51350777

开发过程中,如果出现类似 “Origin ****** is not allowed by Access-Control-Allow-Origin.” 的错误,则可能是由于json数据不支持跨域导致的,应考虑使用jsonp协议

beforeSend: function(XMLHttpRequest) {

XMLHttpRequest.setRequestHeader("sessionid", "1233333");

},

原来对于跨域,有两种不同的请求类型。分别为简单跨域请求

简单跨域请求只要后端: c.getResponse().addHeader("Access-Control-Allow-Origin", "*");

否则浏览器会报错 No 'Access-Control-Allow-Origin' header is

和复杂跨域请求(就是header加入自定义的值,带预检的跨域请求)

第一次请求(预检)    请求方法是options,    method='options'

(第一个OPTIONS的请求是由Web服务器处理跨域访问引发的)

没有提交真正的请求(没有提交真的数据,头部的数据和表单的数据没有提交

// 解决前端js跨域

如果后端设置了底下的访问,

c.getResponse().addHeader("Access-Control-Allow-Or

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值