首頁 > 後端開發 > Golang > 主體

為什麼我的瀏覽器不保存來自 Go 後端的 Cookie,除非我指定 `credentials: \'include\'`?

Susan Sarandon
發布: 2024-11-24 10:48:10
原創
726 人瀏覽過

Why Doesn't My Browser Save Cookies from My Go Backend Unless I Specify `credentials:

瀏覽器無法保留 Cookie

在嘗試建立具有 Go 後端的 React 應用程式時,使用 http.cookie 根據請求的回應設定 cookie 。儘管如此,瀏覽器仍然無法儲存 cookie。 Chrome 和 Firefox 中都曾經遇到過此問題。

經過仔細檢查,我們發現 Fetch API 請求中缺少「credentials」屬性,需要包含 cookie 的回應。透過將 'credentials: "include"' 合併到請求中,瀏覽器能夠保存從回應中取得的 cookie。

fetch(`${url}/login`, {
                method: "POST",
                headers: {
                    "Content-Type": "application/json",
                },
                credentials: "include", // Added parameter
                body: JSON.stringify({
                    email: userDetails.email,
                    password: userDetails.password,
                }),
            }).then((response) => { ...
登入後複製

這一發現凸顯了將 'credentials' 設定為「include」的重要性請求在回應中期待 cookie。缺少此屬性會導致瀏覽器無法儲存 cookie,從而導致上述問題。

以上是為什麼我的瀏覽器不保存來自 Go 後端的 Cookie,除非我指定 `credentials: \'include\'`?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板