【问题标题】:Chrome don't send back cookieChrome 不发回 cookie
【发布时间】:2016-09-08 18:22:28
【问题描述】:

我有一个网络应用程序。它使用两个服务器来工作:

  • 应用服务器(基于 Delphi datasnap)SERV_A
  • WebServer apache SERV_W

这些是用户步骤:

STEP1 登录

用户从 SERV_W 调用索引页,写入用户和密码并通过 HTTP POST 向 SERV_A 调用过程。 SERV_A 通过 Cookie 传递的 session_id 响应(响应头有Set-Cookie: sessionid=123456

STEP2 获取网址列表

用户通过 HTTP GET 调用另一个 SERV_A 过程来检索 list 的 url 例如一个 url 是:http://host_serv_a:port/datasnap/rest/TServerMethods1/getPDF/003

STEP3 点击链接

用户看到一个链接列表并单击其中一个。 浏览器自动执行 HTTP GET 以将资源检索到 SERV_A。

好的,这是我的问题: 在 STEP3 SERV_A 上需要 sessionId,传入一个 cookie,但浏览器从不发送 cookie。为什么?我的浏览器 (Chrome) 没有管理 cookie 的限制。

【问题讨论】:

    标签: rest google-chrome http cookies sapui5


    【解决方案1】:

    我在这里找到了解决方案 https://divshot.com/blog/static-apps/cookies-and-cors/(Web Standards Are Awesome)

    要正确管理 cookie,服务器和客户端必须达成一致:

    • 客户端:在 ajax 调用中将 withCredentials 选项设置为 true
    • 服务器:在响应中设置Access-Control-Allow-Credentials: true 标头

    【讨论】:

      猜你喜欢
      • 2018-05-23
      • 2019-01-14
      • 2017-04-08
      • 2016-02-02
      • 1970-01-01
      • 2019-01-10
      • 2023-03-26
      • 2019-08-25
      • 2014-08-02
      相关资源
      最近更新 更多