簡體   English   中英

同一解決方案和域上的兩個網站應用程序之間的共享會話

[英]Sharing session between two website applications on same solution and domain

我在同一解決方案上並行運行兩個網站,兩個網站都運行在本地IIS上,主要運行在domain/ ,另一個運行在domain/api

用戶已連接到Web表單應用程序(domain /),然后我需要在domain/api上授權他,但是盡管沒有CORS並且發送的標頭中的session_id相同,但api無法識別會話(已編寫Web表單項目可以識別時, HttpContext.Current.Session沒有數據, count = 0 )。

為了在Web api中啟用會話,我在Global.asax Application_PostAuthorizeRequest下添加了HttpContext.Current.SetSessionStateBehavior(SessionStateBehavior.Required)

如果您確實需要這樣做,則可以嘗試將會話對象保存在數據庫中,並在指向這些會話值的cookie中寫一個令牌,因為您說它們在同一域中,所以兩個應用程序都可以訪問該cookie。並檢索令牌並從使用該令牌ID存儲的數據庫中獲取所需的值。 當我必須像您一樣在舊系統上進行修改時,我曾經以相同的方式這樣做。 效果很好,您可以將其快速固定在牆上。

暫無
暫無

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

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