猿问

关于Access-Control-Allow-Origin的跨域问题

前后端分离开发遇到跨域问题

后端要进行session验证,
前端用

xhrFields : {  withCredentials: true},crossDomain : true,

后端配置

将后端放进cookie的session传过去。

现在尝试了两种办法都没有解决:
一.
后端将 Access-Control-Allow-Origin 设为*,同时也把Access-Control-Allow-Credentials设为true了,但是由于前端设置了 withCredentials: true 的原因,chrome和火狐都报错了。

二.
后端将 Access-Control-Allow-Origin 设为前端的具体IP地址和端口号,火狐浏览器正常访问,后端也能正常拿到session,但是chrome浏览器给拦截了,requestHeader没有显示,同时后端也拿不到session。

现在前端是用修改chrome浏览器属性(--args --disable-web-security --user-data-dir)来进行调试的,产品上线之后会继续出现这种跨域问题么?如果和测试一样也不能让用户改配置哇,请问各位大佬有没有办法解决,谢谢大家了。


汪汪一只猫
浏览 489回答 1
1回答

杨魅力

你说的这些方式遇到ie内核浏览器问题会更多,好像你前后端都有权限更改,跨域可以试试用jsonp的方式解决呢。
随时随地看视频慕课网APP
我要回答