0

我正在使用AngularJS製作Chrome擴展程序,要求用戶登錄以獲取完整功能。在頁面上運行應用程序之前,我會執行GET請求以通過其會話cookie獲取當前用戶。在GET請求中找不到Cookie

Cookie被設置在我的域中,如果cookie已被設置,我可以從任意域成功執行GET請求,即使我無法從該任意域中看到document.cookies中的cookie。相反,如果Cookie已過期/無效或尚未從我的域中設置,GET請求失敗 - 這很好。我需要知道什麼時候cookie被設置爲執行我的請求(我的GET)理論上,可以連續執行GET請求,直到我獲得有效用戶,但我不想浪費帶寬/週期)。我知道cookie在那裏,因爲GET有效,但我無法使用document.cookie。我的問題:

在哪裏發送到我的服務器實際存儲的cookie,以及如何查看它?

如果我無法查看此cookie,那麼根據此cookie執行GET請求的什麼時候是一種很好的替代方法?

+0

如果您使用的是nodejs,爲什麼不能僅僅檢查服務器上的_session? – Phil

+0

@我可以;服務器可以很好地看到我的請求,併發回適當的響應。但是,我不想讓服務器氾濫,直到我找回合適的服務器。我想在發送此請求之前檢查cookie的存在。 –

+0

可能是一個長鏡頭,但您是否將withcredentials屬性設置爲true? (假設它是一個AJAX請求) 'XMLHttpRequest.withCredentials' – Jay

回答

0

您應該使用chrome.cookies API來查詢/監控cookie存儲。

您可以使用chrome.cookies.get()查詢商店的當前狀態和/或使用chrome.cookies.onChanged事件訂閱Cookie商店的修改。

不要忘記"cookies"權限。

+0

似乎工作。謝謝! –