ajax 跨域问题

ajax请求,遇到跨域问题,按照网上说的在后台(java)的response过滤器加了Access—control—Allow—origin之后还是不行,但加了access—control—allow—header之后就可以了。这是为什么,原理是什么?

阅读 3.1k
2 个回答

使用ajax的时候,比如jquery的ajax函数时, 会在header头部添加一个x—requested—with (具体头部名不太清楚了), 这时候浏览器会发送一个跨域检查头部,服务器会返回responseHeader, 浏览器检测responseHeader是否符合条件。

  1. 是否来自指定域

  2. 是否允许指定请求方式

  3. 是否允许额外请求头部

  4. 是否允许携带cookie
    等等

你可以检查你发送的请求报文,是否多余自定义头部而非标准头部

就算跨域请求也需要一个header

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进