我正在从我的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
2条答案
按热度按时间ccgok5k51#
我怀疑这是Chrome中的一个bug(或者说是一个考虑不周的“功能”)。你可以验证cookie是由交易的capturing a NetLog设置的。这使你可以访问每个传入和传出请求的准确的、未修改的头部,包括(如果你启用了相关选项)cookie和其他凭据。
我目前正在从另一端遇到这个问题-- Chrome正在发送会话cookie,但没有在“网络”选项卡中显示相关的头部--并计划将一个小的测试用例放在一起,向他们的跟踪器提交一个bug。
gc0ot86w2#
AJAX 库永远不会从响应中删除头部。你在网络标签中看到的实际上是服务器正在响应的内容。我怀疑服务器没有发送回那个头部,因为cookie已经设置好了。尝试清除相关的cookie。
下面的代码将使
cookieName
中指定的cookie过期。通过将其过期日期设置为过去。