我正在使用 Node/Express 服务器和 AngularJS 前端。服务器设置了 cookie,网络响应中正确显示,但是在 Chrome 开发者工具的资源选项卡中未显示该 cookie。造成这种情况的可能原因是什么?
可能是你的cookie是HTTPOnly验证cookie。除非你正在浏览本地主机,否则它们不会在Chrome中显示。
以下是未能设置有效cookie的两个可能原因:
Chrome开发工具也可能存在漏洞,无法显示您的cookie信息,但您可以通过向服务器发出另一个请求来检查实际接收到了哪些cookie信息。
Path=/
,以匹配所有URL。Path
,并且它自动设置为Path=/api
。只有当您浏览到以example.com/api/开头的页面时,这将仅在控制台上可见。尽管由于URL中的路径不同,控制台上看不到cookie,但在同一页面中向example.com/api发送请求的JavaScript代码自然会包括此cookie。Path=/
。根据 Set-Cookie MDN documentation 中的说明,Path=<path-value>
:Path=/
将匹配给定域中的所有 URL。在采取此方法之前,您应该确定它是否适用于您特定的用例场景。