使用POST方法设置跨域Cookie

时间:2020-03-10 04:18:36

标签: javascript cookies http-post fetch cross-domain

我希望使用POST方法在服务器端设置跨域cookie。

Cors设置在服务器端进行设置,以允许跨域请求和凭据。

从跨域JS应用程序发送POST后,尽管响应中具有set-cookies标头,但cookie不会显示在浏览器中。

但是,使用GET方法从服务器设置跨域Cookie的效果很好,并且将其保存在浏览器中。

我没有找到有关此问题的文档,如果有人能解释为什么无法使用POST设置cookie,我将不胜感激。

1 个答案:

答案 0 :(得分:1)

由其他服务器设置的cookie仅在原始站点中可见。

例如,您有site.com和ads.com。 Site.com希望使用ads.com的一些资源。

  • 第1步:site.com将GET / POST请求发送到ads.com。
  • 第2步:ads.com发送带有Cookie(ad_id = blala)的响应。此Cookie源自ads.com,仅在ads.com上可见。
  • 第3步:site.com将其他带有Cookie(ad_id = blala)的请求发送到ads.com。

如果您在site.com中检查cookie,则找不到ad_id cookie,因为该cookie仅在ads.com中可见。

在这种情况下,要查看Cookie,请访问ads.com而不是您的网站。

相关问题