[英]Why res.cookie is working from postman and doesn't from browser?
我試圖在登錄后從我的 nodejs 服務器設置一個令牌。 我的客戶端是反應應用程序,我使用 axios 發出發布請求。
當我嘗試從郵遞員登錄時,我在 cookie 中看到了令牌,但在瀏覽器中沒有 cookie。
這是服務器:
res.cookie("token", token, { httpOnly: true }).sendStatus(200);
這是客戶端:
return axios.post(serviceUrl + "auth/login", data).then(response => {
return response.data;
});
我認為原因可能是當您嘗試設置 cookie 時沒有傳遞域選項。 請嘗試傳遞domain : "\\"
選項,如
res.cookie("token", token, { httpOnly: true, domain : '\' }).sendStatus(200);
我想到了。 Chrome 不會在本地主機中設置 cookie。 我檢查了邊緣,它按預期工作。
默認情況下,不會為本地主機 (Chrome) 存儲 cookie。 如果你想解決這個問題,你可以簡單地在 chrome 開發工具中添加密鑰。 轉到應用程序>存儲>Cookies並將“令牌”粘貼在里面。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.