.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