首頁 > 後端開發 > Golang > 為什麼本機上的瀏覽器中沒有設定我的 HTTPOnly Cookie?

為什麼本機上的瀏覽器中沒有設定我的 HTTPOnly Cookie?

Susan Sarandon
發布: 2024-11-18 19:55:02
原創
176 人瀏覽過

Why Aren't My HTTPOnly Cookies Setting in the Browser on Localhost?

本地主機上的瀏覽器中未設置HTTPOnly Cookie

問題:

在REST API 中使用產生HTTPOnly cookie 的登入端點,即使透過Postman 的POST請求正常工作,瀏覽器中也不再設定 cookie。儘管使用了以前有效的方法,但還是出現了這個問題。

使用的方法:

  • 建立了 REST API 的最小 Go 實作。
  • 使用 Express 和 axios 建立 Node 實作。
  • 分析標頭回應並測試前端程式碼。

結果:

  • Go 和 Node API 都在其回應標頭中發送了 HTTPOnly cookie。
  • 但是,測試的瀏覽器中並未設定 cookie。

解決方案:

問題出在客戶端 JavaScript(fetch() 方法)。透過向 RequestInit 物件新增「credentials:「include」」選項,瀏覽器可以透過請求傳送和接收 cookie。這是在瀏覽器中設定 HTTPOnly cookie 所必需的。

其他資訊:

  • Axios 自動設定「憑證:「包含」」選項。
  • 如果使用 Axios,則應在請求的第三個設定參數中包含「withCredentials: true」以啟用瀏覽器 cookie 設定。

以上是為什麼本機上的瀏覽器中沒有設定我的 HTTPOnly Cookie?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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