簡體   English   中英

如何在前端應用程序和后端服務器之間共享Cookie?

[英]How to share cookie between front-end app and backend server?

在javascript單頁應用程序中,應用戶對前端的首次請求,使用Node JS Express設置cookie。

通過在Fetch API中添加“憑據:包含”選項,可以將憑據包含在請求中。 第一個渲染是服務器端的,而React是服務器端的渲染。

我可以在開發人員工具中看到Cookie。 它根據每個請求發送到前端,而不發送到后端。

前端和后端都是節點服務器。 在開發中,它們位於localhost的不同端口上(也嘗試在hosts文件中設置域,但沒有區別)。 在暫存過程中,api服務器位於前端服務器域的子域中。 都不行。

他們可以共享同一個cookie,還是應該為每個cookie創建一個cookie? 我似乎無法為后端設置請求的Cookie,因為開發人員使用的端口不同或暫存過程中使用的子域不同。

好吧,我想我想通了。

Cookie是根據某些請求發送的,而不是其他請求發送的。 檢查請求方法,結果發現當方法類型為“ OPTIONS”(這是預檢)時,不發送cookie,這顯然是正常的。

解決方法是避免在請求方法為OPTIONS的情況下檢查cookie,在這種情況下僅發送200空響應,以便可以繼續實際請求,在此期間將發送cookie。

暫無
暫無

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

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