我正在尝试做一些简单易行的事情:设置一个cookie!但浏览器(Chrome和Safari测试)只是忽略了它们。 所以响应头看起来像:
Access-Control-Allow-Credentials:true
Access-Control-Allow-Origin:*
Connection:keep-alive
Content-Encoding:gzip
Content-Type:application/json; charset=utf-8
Date:Wed, 19 Jul 2017 04:51:51 GMT
Server:nginx
Set-Cookie:UserAuth=<some jwt>; Path=/; Domain=10.10.1.110; Expires=Wed, 19 Jul 2017 12:51:51 GMT; HttpOnly; Secure
Transfer-Encoding:chunked
Vary:Origin
请求 包含withCredentials=true
。
但Chrome中的Cookie部分是空的。我已经尝试完全删除域名,删除路径,我能想到的每个配置,但浏览器只是不会玩球。
我错过了什么?
答案 0 :(得分:1)
因此事实证明,原始请求已经&#39; withCredentials = true&#39;作为请求标头而不是在XMlHttpRequest配置对象上设置。
答案 1 :(得分:0)
您的Cookie显示 仅Http; 固定;
生成cookie时使用HttpOnly标志有助于降低客户端脚本访问受保护cookie的风险
安全标志的目的是防止由于以明文形式传输cookie而被未授权方观察到cookie。 通过设置安全标志,浏览器将阻止通过未加密的通道传输cookie。
如果在TLS层通过带有安全标志的HTTP传输,Cookie将被中断。 因此,请检查您的偏好并相应地设置Cookie的配置。