【发布时间】:2018-12-15 17:10:59
【问题描述】:
我有一个页面 (email.aspx) 正在检索会话值并根据该值进行一些处理。
当我使用其 URL 直接从浏览器调用 email.ASPX 时,一切正常,没有任何问题。
Public Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim emailaddress As String
Dim x As String = ""
x = Session("id")
If x = "" Then
emailaddress = "failed to get session"
Else
' Do some staff here
End If
Response.Write(emailaddress)
End Sub
但是当我尝试使用 WebRequest.Create(URL) 从另一个包含嵌入式 vb.net 代码的 ASPX 页面调用 (email.aspx) 时,我发现它无法检索导致错误的 Session 值!
Public Function getemailaddress() As String
Dim sURL As String
sURL = "http://sample/email.aspx"
Dim wrGETURL As System.Net.WebRequest
wrGETURL = System.Net.WebRequest.Create(sURL)
Dim emailaddress As String
Dim objStream As System.Net.HttpWebResponse
objStream = wrGETURL.GetResponse
If objStream.StatusCode = System.Net.HttpStatusCode.OK Then
Dim responseStream As System.IO.StreamReader
responseStream = New System.IO.StreamReader(objStream.GetResponseStream())
emailaddress = responseStream.ReadToEnd()
End If
objStream.Close()
Return emailaddress
End Function
我无法弄清楚这个问题背后的原因
【问题讨论】: