Udostępnij za pośrednictwem


HttpServerUtility.UrlDecode Metoda

Definicja

Dekoduje ciąg zakodowany na potrzeby transmisji HTTP, a następnie wysyłany do serwera w adresie URL.

Aby kodować lub dekodować wartości poza aplikacją internetową, użyj WebUtility klasy .

Przeciążenia

UrlDecode(String)

Adres URL dekoduje ciąg i zwraca zdekodowany ciąg.

UrlDecode(String, TextWriter)

Dekoduje ciąg HTML odebrany w adresie URL i wysyła wynikowe dane wyjściowe do strumienia wyjściowego TextWriter .

UrlDecode(String)

Adres URL dekoduje ciąg i zwraca zdekodowany ciąg.

public:
 System::String ^ UrlDecode(System::String ^ s);
public string UrlDecode (string s);
member this.UrlDecode : string -> string
Public Function UrlDecode (s As String) As String

Parametry

s
String

Ciąg tekstowy do dekodowania.

Zwraca

Zdekodowany tekst.

Przykłady

W poniższym przykładzie pokazano, jak dekodować wartość pobraną z ciągu zapytania. Kod znajduje się w pliku za kodem dla strony internetowej. ReturnPage odwołuje się do kontrolki HyperLink .

public partial class _Default : Page
{       
    protected void Page_Load(object sender, EventArgs e)
    {
        string returnUrl = Server.UrlDecode(Request.QueryString["url"]);
        ReturnPage.NavigateUrl = returnUrl;
    }
}
Public Class _Default
    Inherits Page

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
        Dim returnUrl = Server.UrlDecode(Request.QueryString("url"))
        ReturnPage.NavigateUrl = returnUrl
    End Sub
End Class

Następny przykład jest podobny do poprzedniego przykładu, z wyjątkiem tego, jak dekodować wartość z klasy, która nie znajduje się w pliku kodu.

public class SampleClass
{
    public string RetrievePassedUrl()
    {
        return HttpContext.Current.Server.UrlDecode(HttpContext.Current.Request.QueryString["url"]);
    }
}
Public Class SampleClass
    Public Function RetrievePassedUrl() As String
        Return HttpContext.Current.Server.UrlDecode(HttpContext.Current.Request.QueryString("url"))
    End Function
End Class

Uwagi

Kodowanie adresów URL gwarantuje, że wszystkie przeglądarki będą prawidłowo przesyłać tekst w ciągach adresów URL. Znaki, takie jak znak zapytania (?), znaki i znaki (&), ukośnik (/) i spacje mogą być obcinane lub uszkodzone przez niektóre przeglądarki. W związku z tym te znaki muszą być kodowane w <a> tagach lub ciągach zapytania, w których ciągi mogą być ponownie wysyłane przez przeglądarkę w ciągu żądania.

Ta metoda jest wygodnym sposobem uzyskiwania dostępu do HttpUtility.UrlDecode metody w czasie wykonywania z aplikacji ASP.NET. Ta metoda służy HttpUtility.UrlDecode do dekodowania ciągów.

W pliku za kodem dla ASP.NET strony internetowej uzyskaj dostęp do wystąpienia HttpServerUtility klasy za pomocą Server właściwości . W klasie, która nie znajduje się w pliku za kodem, użyj polecenia HttpContext.Current.Server , aby uzyskać dostęp do wystąpienia HttpServerUtility klasy.

Poza aplikacją internetową użyj WebUtility klasy , aby kodować lub dekodować wartości.

Dotyczy

UrlDecode(String, TextWriter)

Dekoduje ciąg HTML odebrany w adresie URL i wysyła wynikowe dane wyjściowe do strumienia wyjściowego TextWriter .

public:
 void UrlDecode(System::String ^ s, System::IO::TextWriter ^ output);
public void UrlDecode (string s, System.IO.TextWriter output);
member this.UrlDecode : string * System.IO.TextWriter -> unit
Public Sub UrlDecode (s As String, output As TextWriter)

Parametry

s
String

Ciąg HTML do dekodowania.

output
TextWriter

Strumień TextWriter wyjściowy zawierający zdekodowany ciąg.

Przykłady

Poniższy przykład dekoduje ciąg o nazwie EncodedString (odebrany w adresie URL) do ciągu o nazwie DecodedString.

StringWriter writer = new StringWriter();
Server.UrlDecode(EncodedString, writer);
String DecodedString = writer.ToString();

Dim writer As New StringWriter
Server.UrlDecode(EncodedString, writer)
Dim DecodedString As String = writer.ToString()
   

Uwagi

Kodowanie adresów URL gwarantuje, że wszystkie przeglądarki będą prawidłowo przesyłać tekst w ciągach adresów URL. Znaki, takie jak znak zapytania (?), znaki i znaki (&), ukośnik (/) i spacje mogą być obcinane lub uszkodzone przez niektóre przeglądarki. W związku z tym te znaki muszą być kodowane w <a> tagach lub ciągach zapytania, w których ciągi mogą być ponownie wysyłane przez przeglądarkę w ciągu żądania.

UrlDecode jest wygodnym sposobem uzyskiwania dostępu do HttpUtility.UrlDecode metody w czasie wykonywania z aplikacji ASP.NET. UrlDecode Wewnętrznie używa HttpUtility.UrlDecode metody do dekodowania ciągów.

Aby kodować lub dekodować wartości poza aplikacją internetową, użyj WebUtility klasy .

Dotyczy