在chrome中没有显示Set-Cookie标头

js5cn81o  于 2023-03-27  发布在  Go
关注(0)|答案(2)|浏览(230)

我正在从我的react应用程序中使用axios进行API调用。api调用返回一个Set-Cookie头,该头在firefox中似乎工作正常。然而,我根本不知道chrome中的Set-Cookie头。我试图在谷歌上搜索这个问题,但找不到任何具体的答案。任何有关此问题的帮助都将不胜感激。

浏览器urlhttp://localhost:3000/checkout/5423568515API调用urlhttp://localhost:8087/session/loginByUserName

Firefox Image showing Set-Cookie header in firefox
浏览器Image showing cookies are set中甚至设置了Cookie
Chrome:未显示Set-Cookie标头且未设置Cookie Chrome with no Set-Cookie header

ccgok5k5

ccgok5k51#

我怀疑这是Chrome中的一个bug(或者说是一个考虑不周的“功能”)。你可以验证cookie是由交易的capturing a NetLog设置的。这使你可以访问每个传入和传出请求的准确的、未修改的头部,包括(如果你启用了相关选项)cookie和其他凭据。
我目前正在从另一端遇到这个问题-- Chrome正在发送会话cookie,但没有在“网络”选项卡中显示相关的头部--并计划将一个小的测试用例放在一起,向他们的跟踪器提交一个bug。

gc0ot86w

gc0ot86w2#

AJAX 库永远不会从响应中删除头部。你在网络标签中看到的实际上是服务器正在响应的内容。我怀疑服务器没有发送回那个头部,因为cookie已经设置好了。尝试清除相关的cookie。
下面的代码将使cookieName中指定的cookie过期。通过将其过期日期设置为过去。

document.cookie = cookieName + "=something; expires=Thu, 18 Dec 2013 12:00:00 UTC;"

相关问题