瀏覽器本地主機中未設定HTTPOnly Cookie
問題:
問題:API 的登入端點發送包含有效負載(JWT) 的HTTPOnly cookie,但該cookie並未被在瀏覽器中設定。這種方法多年來一直有效,但最近停止了。該問題與本機主機環境無關。 Postman 測試確認 cookie 按預期設定。
將前端剝離為基本登入
調查:Go 和Node API 都正確地發送設定了HTTPOnly 標誌的Set-Cookie標頭。這表示問題可能出在瀏覽器或 fetch() 方法。
解決方案:透過新增憑證:「include」屬性解決了問題到前端 JavaScript 中的 fetch() 方法。此屬性指示瀏覽器傳送和接收 cookie。
原因:HTTPOnly cookie 旨在防止客戶端 JavaScript 存取 cookie 的內容。預設情況下,瀏覽器會透過不在 XHR 或 fetch() 請求中傳送 cookie 來支援這一點。透過新增憑證:「include」屬性,瀏覽器被明確告知將 cookie 與請求一起傳送,從而允許伺服器接收它並進行適當的設定。
以上是為什麼我的 HTTPOnly Cookie 沒有在本機上設定?的詳細內容。更多資訊請關注PHP中文網其他相關文章!