gpt4 book ai didi

javascript - 将 cookie 域设置为 IP 地址(使用 CORS)

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:04:33 36 4
gpt4 key购买 nike

我在 x.com 上托管了一个 JavaScript 应用程序,它使用 AJAX(通过 jQuery)联系在 LAN 环境中托管的 Apache 服务器(使用静态 IP,192.168.1.5).

Apache 服务器公开了一个 API,该 API 要求用户设置特定的 cookie 才能使用它。

我的问题是我无法让 Apache 服务器使用正确的域 (192.168.1.5) 设置 cookie,以便浏览器通过 AJAX 调用发送 cookie。

有什么办法可以设置以IP为域名的cookie吗?我见过的所有示例都要求域的格式为 example.org

场景如下:

  1. x.com 上的 JavaScript 应用程序向 192.168.1.5 发送 AJAX 身份验证请求。
  2. 来自 192.168.1.5 的响应有一个 Set-Cookie header ,应该将 cookie 设置为 192.168 .1.5 域。
  3. x.com 上的 JavaScript 应用程序向位于 192.168.1.5 的 API 发送一个 AJAX 请求,并将第 2 步中的 cookie 作为请求的一部分。

最佳答案

服务器和客户端都需要明确地告诉对方他们想要 cookie。

JavaScript

xhrInstance.withCredentials = true;

服务器 header

Access-Control-Allow-Credentials: true

https://developer.mozilla.org/en-US/docs/HTTP_access_control#Requests_with_credentials

总结一下:与IP地址无关。 Cookie的host可以是IP地址或域名。

关于javascript - 将 cookie 域设置为 IP 地址(使用 CORS),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12669289/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com