.Net web重定向請求session及cookie變化丟失問題解決方案


業務場景:

在多系統業務集成時,往往會有單點登錄跨站獲取信息或打開頁面,此時系統往往是url攜帶ticket信息效驗,ticket效驗通過后頁面重定向到指定的頁面或接口

問題症狀:

在.Net中使用WebClient或WebRequest訪問(服務器內部重定向的url)時,重定向前更改的cookie沒有在重定向后沒有,以及重定向前后SessionId會出現變化

示例URL:http://localhost:1133/login.xip?LoginMethod=ssologin&Ticket=adc395c9-994e-4e38-b30d-50494832849f&ReturnUrl=userinfo.xip

解決方案:

使用HttpWebRequest創建請求,設置CookieContrainer

完整代碼:

            string url = "http://localhost:1133/login.xip?LoginMethod=ssologin&Ticket=adc395c9-994e-4e38-b30d-50494832849f&ReturnUrl=userinfo.xip";
            var web = (HttpWebRequest)HttpWebRequest.Create(url);
            web.CookieContainer = new CookieContainer();
            var res = web.GetResponse();       

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM