跨域设置cookie

当时的需求


大致是:前后台交互,但两个的地址不一样。需要后台识别当前的用户,那么后台就需要设置一个session,前台收到response后自动保存到cookie。可是在测试中,前端不能自动保存cookie, 也不能获取到(document.cookie)。故怀疑是跨域的问题,详见:我的提问。

尝试了两种方法可以解决


第一种

ajax的jsonp的方式可以使前端自动保存cookie,但支持GET的方式。

第二种

使用nginx做反向代理。

假设前后端分别在a.comb.com, 这样可以在前端页面直接访问 a.com/api/data , 实际上访问的是 b.com/api/data , 这样在服务器设置的cookie就可以自动保存到前端的cookie里了。(这里a.com对应0.0.0.0:5000, b.com对应0.0.0.0:8000)

跨域设置cookie_第1张图片
nginx反向代理配置
前端页面
跨域设置cookie_第2张图片
发送请求后,头信息

你可能感兴趣的:(跨域设置cookie)