Udostępnij za pośrednictwem


HttpServerUtility.UrlEncode Metoda

Definicja

Koduje ciąg do niezawodnej transmisji HTTP z serwera sieci Web do klienta za pośrednictwem adresu URL.

Przeciążenia

UrlEncode(String)

Adres URL koduje ciąg i zwraca zakodowany ciąg.

UrlEncode(String, TextWriter)

Adres URL koduje ciąg i wysyła wynikowe dane wyjściowe do strumienia wyjściowego TextWriter .

Uwagi

UrlEncode to wygodny sposób uzyskiwania dostępu do HttpUtility.UrlEncode metody w czasie wykonywania z aplikacji ASP.NET. UrlEncode Wewnętrznie używa metody HttpUtility.UrlEncode do kodowania ciągów.

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

UrlEncode(String)

Adres URL koduje ciąg i zwraca zakodowany ciąg.

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

Parametry

s
String

Tekst do kodu URL.

Zwraca

Tekst zakodowany pod adresem URL.

Przykłady

W poniższym przykładzie pokazano, jak kodować wartość adresu URL, która jest używana jako wartość ciągu zapytania hiperłącza. Kod znajduje się w pliku za pomocą kodu dla strony internetowej. Wartość kodowania jest zakodowana w tym przykładzie tylko w celu uproszczenia przykładu i pokazania typu wartości, którą można kodować pod adresem URL. Zazwyczaj adres URL koduje wartość otrzymaną od użytkownika lub żądania. NextPage odwołuje się do kontrolki HyperLink .

public partial class _Default : Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        string destinationURL = "http://www.contoso.com/default.aspx?user=test";

        NextPage.NavigateUrl = "~/Finish?url=" + Server.UrlEncode(destinationURL);
    }             
}
Public Class _Default
    Inherits Page

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
        Dim destinationURL = "http://www.contoso.com/default.aspx?user=test"

        NextPage.NavigateUrl = "~/Finish?url=" + Server.UrlEncode(destinationURL)
    End Sub
End Class

Następny przykład jest podobny do poprzedniego przykładu, z wyjątkiem pokazano, jak kodować wartość adresu URL z klasy, która nie znajduje się w pliku za kodem.

public class SampleClass
{
    public string GetUrl()
    {
        string destinationURL = "http://www.contoso.com/default.aspx?user=test";

        return "~/Finish?url=" + HttpContext.Current.Server.UrlEncode(destinationURL);
    }
}
Public Class SampleClass
    Public Function GetUrl() As String
        Dim destinationURL = "http://www.contoso.com/default.aspx?user=test"

        Return "~/Finish?url=" + HttpContext.Current.Server.UrlEncode(destinationURL)
    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 (?), ampersand (&), znacznik ukośnik (/) i spacje mogą być obcięte lub uszkodzone przez niektóre przeglądarki. W związku z tym te znaki muszą być zakodowane w <a> tagach lub w 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.UrlEncode metody w czasie wykonywania z aplikacji ASP.NET. Wewnętrznie ta metoda używa metody HttpUtility.UrlEncode do kodowania ciągów.

W pliku za pomocą kodu dla strony internetowej ASP.NET uzyskaj dostęp do wystąpienia HttpServerUtility klasy za pośrednictwem 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 do kodowania lub dekodowania wartości.

Dotyczy

UrlEncode(String, TextWriter)

Adres URL koduje ciąg i wysyła wynikowe dane wyjściowe do strumienia wyjściowego TextWriter .

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

Parametry

s
String

Ciąg tekstowy do kodowania.

output
TextWriter

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

Przykłady

Poniższy przykład koduje ciąg do transmisji przez protokół HTTP. Koduje on ciąg o nazwie , który zawiera tekst "To jest <ciąg> testowy"." i kopiuje go do ciągu o nazwie TestStringEncodedString "This+is+a+a+%3cTest+String%3e".

String TestString = "This is a <Test String>.";
StringWriter writer = new StringWriter();
Server.UrlEncode(TestString, writer);
String EncodedString = writer.ToString();

Dim TestString As String = "This is a <Test String>."
Dim writer As New StringWriter
Server.UrlEncode(TestString, writer)
Dim EncodedString 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 (?), ampersand (&), znacznik ukośnik (/) i spacje mogą być obcięte lub uszkodzone przez niektóre przeglądarki. W związku z tym te znaki muszą być zakodowane w <a> tagach lub w ciągach zapytania, w których ciągi mogą być ponownie wysyłane przez przeglądarkę w ciągu żądania.

UrlEncode to wygodny sposób uzyskiwania dostępu do HttpUtility.UrlEncode metody w czasie wykonywania z aplikacji ASP.NET. UrlEncode Wewnętrznie używa metody HttpUtility.UrlEncode do kodowania ciągów.

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

Dotyczy