我想使用IHttpModule設置會話值。我已經將HttpModule設置爲用於所有請求,而不僅僅是託管/ ASPX頁面。IIS HttpModule無法設置會話
但是我發現,當一個非ASP.NET頁面的請求進入(如gif)時,HttpApplication的會話成員會拋出異常或爲空。
我發現下面的SO張貼這背後的原因是:link
當我換了一個實現IRequiresSessionState會話成員是在HTTP模塊可用的HttpHandler的,和一個Set-Cookie發送回到瀏覽器,但後來當我嘗試讀取正常的ASPX頁面中的會話內容時,我設置的任何值都不存在。調試時,我可以看到SessionID在HttpModule和普通ASPX頁面中都是相同的。
我是否需要做任何事情來強制保存會話?我假設在交換虛假的HttpHandler時初始化會話,不得不放棄原來不執行IRequiresSessionState的會話,導致會話在請求結束時不被保存。