2 回答

TA貢獻1813條經(jīng)驗 獲得超2個贊
我剛剛遇到了同樣的問題axios,這導(dǎo)致Set-Cookie響應(yīng)標頭被靜默忽略。這很煩人,如果它拒絕它們,它會在該標題上顯示那個小黃色三角形,并在網(wǎng)絡(luò)檢查器中說明原因。
我通過添加一個請求攔截器來true為每個請求強制它來解決這個問題:
axios.interceptors.request.use(
(config) => {
config.withCredentials = true
return config
},
(error) => {
return Promise.reject(error)
}
)

TA貢獻1827條經(jīng)驗 獲得超8個贊
解決方案
原來問題出在前端,特別是 JavaScript 的fetch()方法。
let response = await fetch(`http://localhost:8000/login`, {
method: "POST",
credentials: "include", //--> send/receive cookies
body: JSON.stringify({
email,
}),
headers: {
"Content-Type": "application/json",
},
});
您將需要對象credentials: include中的屬性RequestInit,不僅用于發(fā)出需要 cookie 身份驗證的請求,還用于接收所述 cookie。
Axios 通常會自動填寫這部分(根據(jù)經(jīng)驗),但如果沒有,您還需要withCredentials: true在請求的第三個config參數(shù)中添加以允許瀏覽器設(shè)置 cookie。
- 2 回答
- 0 關(guān)注
- 157 瀏覽
添加回答
舉報