IFrame(另外Web AP) + 雙Web AP Asp.NET Form驗証同forms name = Session會掉!
前言
繼上次Session會掉系列,這次又有一個掉Session的案例。雖然這是比較特別的用法,但是大家還是可以參考看看。
這次的狀況如下圖,在WebAP1的Page中放在IFrame去連到WebAP2的Page,開完畫面後,WebAP1的Session就掉了!
研究
同事跟我說Session會掉,馬上測試一下,並用工具去錄一下,看到了Cookie後,有點感覺是否是因為cookie的Name被蓋掉呢?
而且事件檢視器中又有”票証無效”的錯誤,就更確定應該是cookie的問題!
那使用Form驗証的cookie name是寫在<forms 中的name,看一下都是叫”.RAAUTH”。把WebAP2的forms name改成.RAAUTH_LOL,再試一下程式,果然就OK了!
以下Run過程式後,就多了一個.RAAUTH_LOL的cookie。
另外,有看到別人沒有設定<forms的name屬性,它會用預設值”.ASPXAUTH”,所以如果是像我們這樣的應用,還是要改name的屬性值成不同哦!
Hi,
亂馬客Blog已移到了 「亂馬客 : Re:從零開始的軟體開發生活」
請大家繼續支持 ^_^