Request.URL双查询字符串参数?
我请求的URL是这样的:Request.URL双查询字符串参数?
http://mylocalsite/virtual/page.aspx?var1=1&var2=2&var3=3
我使用FormsAuthentication
和我未经验证的,所以我重定向。这是浏览器的地址栏中显示:
http://mylocalsite/virtual/login.aspx?ReturnUrl=/virtual/page.aspx?var1=1&var2=2&var3=3
在login.aspx的的pageLoad的事件中,我试图从网址两种方式:
Dim example1 as String = Request.Url Dim example2 as String = Request.Url.Scheme & "://" & Request.Url.Authority & Request.RawUrl
这就是我得到:
' Example 1 http://mylocalsite/virtual/login.aspx?ReturnUrl=/virtual/page.aspx?var1=1&var2=2&var3=3&var1=1&var2=2&var3=3
' Example 2 - is URLEncoded
http://mylocalsite/virtual/login.aspx?ReturnUrl=%2fvirtual%2fpage.aspx%3fvar1%3d1%26var2%3d2%26var3%3d3%26var1%3d1%26var2%3d2%26var3%3d3
为什么我的查询字符串在这两个例子中翻倍?
回答:
这是通过设计完成的,因此您可以在登录时访问那些查询字符串参数。这些参数也必须保留,以便在登录后重定向 - 所以它们也会被url编码。有关更详细的解释,请参见Anatomy of Forms Authentication ReturnUrl。
以上是 Request.URL双查询字符串参数? 的全部内容, 来源链接: utcz.com/qa/265901.html