次のような 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 イベントで、次の 2 つの方法で URL を調べようとします。
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
これらの例の両方でクエリ文字列が 2 倍になっているのはなぜですか?