HttpServerUtility.UrlEncode Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Zakóduje řetězec pro spolehlivý přenos HTTP z webového serveru do klienta prostřednictvím adresy URL.
Přetížení
| Name | Description |
|---|---|
| UrlEncode(String) |
Adresa URL zakóduje řetězec a vrátí kódovaný řetězec. |
| UrlEncode(String, TextWriter) |
Adresa URL zakóduje řetězec a odešle výsledný výstup do výstupního datového TextWriter proudu. |
Poznámky
UrlEncode je pohodlný způsob, jak získat přístup k metodě HttpUtility.UrlEncode za běhu z aplikace ASP.NET. Interně UrlEncode se používá HttpUtility.UrlEncode ke kódování řetězců.
K kódování nebo dekódování hodnot mimo webovou aplikaci použijte WebUtility třídu.
UrlEncode(String)
Adresa URL zakóduje řetězec a vrátí kódovaný řetězec.
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
Text na kódování URL.
Návraty
Text kódovaný adresou URL.
Příklady
Následující příklad ukazuje, jak kódovat adresu URL hodnotu, která se používá jako hodnota řetězce dotazu hypertextového odkazu. Kód se nachází v souboru kódu pro webovou stránku. Hodnota, která se má kódovat, je v tomto příkladu pevně zakódovaná, pouze pro zjednodušení příkladu a zobrazení typu hodnoty, kterou můžete zakódovat pomocí adresy URL. Obvykle byste zakódovala hodnotu, kterou jste obdrželi od uživatele nebo požadavku.
NextPage odkazuje na HyperLink ovládací prvek.
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
Další příklad je podobný předchozímu příkladu s tím rozdílem, že ukazuje, jak kódovat hodnotu z třídy, která není v souboru kódu.
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
Poznámky
Kódování adresy URL zajišťuje, že všechny prohlížeče budou správně přenášet text v řetězcích adresy URL. Některé prohlížeče můžou zkrátit nebo poškodit otazník (?), ampersand (&), lomítko (/) a mezery. V důsledku toho musí být tyto znaky kódovány ve <a> značkách nebo v řetězcích dotazu, ve kterých je možné řetězce znovu odeslat prohlížečem v řetězci požadavku.
Tato metoda představuje pohodlný způsob přístupu k metodě HttpUtility.UrlEncode za běhu z aplikace ASP.NET. Interně tato metoda používá HttpUtility.UrlEncode ke kódování řetězců.
V souboru kódu webové stránky ASP.NET přejděte k instanci třídy HttpServerUtility prostřednictvím vlastnosti Server. Ve třídě, která není v souboru kódu, použijte HttpContext.Current.Server pro přístup k instanci HttpServerUtility třídy.
Mimo webovou aplikaci použijte WebUtility třídu ke kódování nebo dekódování hodnot.
Platí pro
UrlEncode(String, TextWriter)
Adresa URL zakóduje řetězec a odešle výsledný výstup do výstupního datového TextWriter proudu.
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
Textový řetězec, který se má zakódovat.
- output
- TextWriter
TextWriter Výstupní datový proud, který obsahuje kódovaný řetězec.
Příklady
Následující příklad zakóduje řetězec pro přenos protokolem HTTP. Zakóduje řetězec s názvem TestString, který obsahuje text "Toto je <testovací řetězec>", a zkopíruje ho do řetězce s názvem EncodedString "This+is+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()
Poznámky
Kódování adresy URL zajišťuje, že všechny prohlížeče budou správně přenášet text v řetězcích adresy URL. Některé prohlížeče můžou zkrátit nebo poškodit otazník (?), ampersand (&), lomítko (/) a mezery. V důsledku toho musí být tyto znaky kódovány ve <a> značkách nebo v řetězcích dotazu, ve kterých je možné řetězce znovu odeslat prohlížečem v řetězci požadavku.
UrlEncode je pohodlný způsob, jak získat přístup k metodě HttpUtility.UrlEncode za běhu z aplikace ASP.NET. Interně UrlEncode se používá HttpUtility.UrlEncode ke kódování řetězců.
K kódování nebo dekódování hodnot mimo webovou aplikaci použijte WebUtility třídu.