【发布时间】:2013-06-12 12:40:49
【问题描述】:
在我的code 中,我将HttpWebRequest 发送到我网站中的一个页面。
当request 发送到这个页面时,它不会维护Session 的值。
下面是我生成网络请求的代码:
Public Overloads Shared Function ReadURL(ByVal sUrl As String) As String
Dim sBody As String
Dim oResponse As HttpWebResponse
Dim oRequest As HttpWebRequest
Dim oCookies As New CookieContainer
oRequest = WebRequest.Create("http://localhost:64802/inventory/purchase_order.aspx?id=5654")
oRequest.CookieContainer = oCookies
oResponse = oRequest.GetResponse()
Dim oReader As New StreamReader(oResponse.GetResponseStream())
sBody = oReader.ReadToEnd
oReader.Close()
oResponse.Close()
Return sBody
End Function
下面是Purchaseorder.aspx.vb的Page_Load上写的代码:
iDomains_ID = Session("Domains_ID")
iLogin_ID = Session("Login_ID")
sPage = Request.Path
If Request.QueryString.Count > 0 Then sPage &= "?" & Request.QueryString.ToString()
sPage = shared01.Encrypt(sPage, Application("PK"))
If Not User.Identity.IsAuthenticated Or iLogin_ID = 0 Then
Response.Redirect("/login.aspx?page=" & sPage)
Exit Sub
End If
code 以上没有获得session 值,它会重定向到login page。
那么,我如何在HttpWebRequest 期间维护两个页面上的session。
正在寻找您的回复。
编辑
我尝试使用CookieContainer 类,如您在上面的代码中所见。但它根本不起作用。
【问题讨论】:
标签: asp.net .net session httpwebrequest httpwebresponse