Chrome不会发回cookie

时间:2016-07-07 13:46:11

标签: rest google-chrome http cookies sapui5

我有一个网络应用程序。要使用它,请使用两台服务器:

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

以下是用户步骤:

第1步登录

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

第2步获取网址列表

用户通过HTTP GET调用另一个SERV_A过程来检索url的列表 例如,网址为:http://host_serv_a:port/datasnap/rest/TServerMethods1/getPDF/003

第3步点击链接

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

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

1 个答案:

答案 0 :(得分:0)

我在这里找到了一个解决方案https://divshot.com/blog/static-apps/cookies-and-cors/(Web标准非常棒)

要正确管理cookie,服务器和客户必须同意:

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