跨域名cookie

本文共有819个字,关键词:

问题:请求其它服务器实现登录,因为是未设置在同域名下所以跨站了,登录后返回了cookie,但未设置到浏览器中

解决:跨域名设置时要求非常严格,首先需要是https网站

很多人知道需要在 ajax 里配置 withCredentials 为 true,但光有这个不够,需要满足的条件如下:

  • withCredentials
    ajax里配置 withCredentials 为 true
  • 响应头
    服务端需配置响应头字段:Access-Control-Allow-Origin,值为允许跨域的域名,不能为星号*
    还需要服务端配置另一响应头字段:Access-Control-Allow-Credentials,值为true
  • 跨站
    请求是否跨站,在非同一父域名下的就是跨站,跨站的情况需要cookie的属性满足以下条件:
    cookie字段的 samesite 需要设置 none
    将samesite设为none时,有一个要求,就是cookie的 secure 属性需要设置为 true
    当secure设为true时,只允许https请求携带cookie,所以请求地址需要是 https 协议

参考:

https://blog.csdn.net/u010059669/article/details/128788645
https://blog.csdn.net/ycsdn10/article/details/121586087
https://blog.csdn.net/weixin_39145520/article/details/129400467  设置samesite需要python3.8以上
版权声明:本文为作者原创,如需转载须联系作者本人同意,未经作者本人同意不得擅自转载。
添加新评论
暂无评论