簡體   English   中英

Cookie 未隨 Web 應用 manifest.json 請求發送

[英]Cookies not sent with request for Web App manifest.json

我正在嘗試在需要身份驗證(通過 Cookie 管理的登錄令牌)的網站上啟用 PWA。

我正在本地( http://localhost:4502 )嘗試此操作並登錄(並發出登錄cookie)網站。

問題是當請求 Web App 清單時,請求沒有發送 Cookie,因此請求未通過身份驗證。

<link rel="manifest" href="/content/site-x/manifest.json">

如您所見,清單與包含它的網頁使用相同的主機/方案。

對清單的請求是否傳遞了 cookie? 我什至將我的登錄 cookie 設置得盡可能寬松,但沒有。 cookie 是在所有其他請求(JS、CSS 等)上發送的——也許 localhost 有什么特別之處嗎? 或者它不是http?

根據https://developers.google.com/web/fundamentals/web-app-manifest/

對清單的請求是在沒有任何憑據的情況下發出的(即使它在同一個域中),因此如果清單需要憑據,則必須在清單標簽中包含 crossorigin="use-credentials"。

因此,為兩個跨域添加<link rel="manifest" href="/manifest.json" crossorigin="use-credentials">作為在清單請求中添加服務器 cookie

鉻中似乎有一個古老的錯誤,這些年來應該已經修復了。 也許您可以嘗試使用ajax/fetch帶有 requestHeader "Content-type: application/json"的“/content/site-x/manifest.json”,然后從中創建一個 Blob,然后調用 createObjectURL(Blob) 並給出這個 url到href?

然后還有這個:

<link rel="manifest" href="/manifest.json" crossorigin="use-credentials">

我想在你的情況下不會有幫助,因為你來自同一個起源。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM