已有页面里已经设置了session,比如页面a.aspx页面设置了session["aa"]="1";
在b.aspx页面中用HttpWebRequest获取c.aspx页面的内容,c.aspx需要用到session["aa"]。
现在在c.aspx页面里获取不到session。
b.aspx代码:string page = "http://10.0.0.223:105/c.aspx";
HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create(page);myHttpWebRequest.Headers.Add("Cookie", this.Request.Headers["Cookie"]);//添加上这句后,下面语句提示超时HttpWebResponse myHttpWebResponse = (HttpWebResponse)myHttpWebRequest.GetResponse();
Stream myResponseStream = myHttpWebResponse.GetResponseStream();
StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.UTF8);
string content = myStreamReader.ReadToEnd();
已经尝试过构造ASP.NET_SessionId的cookie,也是取不到session,经测试HttpWebRequest请求的页面都是新的会话,也就是新的sessionid。myHttpWebRequest.Headers.Add("Cookie", this.Request.Headers["Cookie"]);
这句是之前登录状态使用cookie时的语句,使用cookie可以正常使用,改为session后就出现了这个问题。有没有解决过这类问题的朋友,给点建议吧,谢谢了