jQuery$.ajax发送请求时候为啥会报拒绝设置不安全的header?
因为用 xhr 无法设置 cookie 字段。var xhr = new XMLHttpRequest();xhr.open(\u0026#39;GET\u0026#39;,\u0026#39;/\u0026#39;,true);xhr.setRequestHeader(\u0026#39;cookie\u0026#39;,\u0026#39;1\u0026#39;); // Error: Refused to set unsafe header "cookie"
■网友
浏览器不允许用户手动设置敏感的Http header包括但不限于cookiehostreferer
■网友
为了安全,跨域XHR对象有一些限制:不能使用 setRequestHeader() 设置自定义头部不能发送和接收 cookie调用 getAllResponseHeaders() 方法总会返回空字符串参考:1.《JavaScript高级程序设计(第3版)》 - 21.4.2 其他浏览器对 CORS 的实现
■网友
【jQuery$.ajax发送请求时候为啥会报拒绝设置不安全的header?】 这种问题还是要看标准的XMLHttpRequet相关接口的定义,设置request header头的时候,有些name是被禁止的:
文档已经列出了这些被禁止的name:
所以,碰到这种问题最快捷的方法是直接看官方文档。
https://xhr.spec.whatwg.org/#the-setrequestheader()-method
■网友
有没有解决的方法呢?遇到了同样的问题
■网友
https://www.owasp.org/index.php/HTTP_Request_Smuggling
推荐阅读
- 女生想转行做习前端开发,自学有哪些好的教程和方法怎样深入jquery
- tcp通讯时,发送30多个1024的包到客户端,中间有包的大小不对,为啥
- 哪些前端技术需要学习
- css的animation,jquery的animation()和setInterval制作动画区别
- 微信公众号为啥没有预览功能
- 怎样评价脉脉?
- 待后阅读的文章怎样利用ifttt全文发送到evernote
- 注册Facebook,验证手机号码时收到的验证码发送方为啥是中国嘉兴的
- 关于使用PHPMailer发送邮件出错的问题
- Twitter 今天发布了关于 DM 的新策略「一般用户即使不被认证用户关注,也仍可以向他们发送私信」,这个策略变更背后的原因是啥
