HttpServerUtility.UrlDecode Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Расшифровывает строку, кодированную для передачи НТТР-данных и отправленную на сервер с кодировкой URL.
Чтобы кодировать или декодировать значения вне веб-приложения, используйте класс WebUtility.
Перегрузки
UrlDecode(String) |
Расшифровывает строку в кодировке URL с последующим возвращением. |
UrlDecode(String, TextWriter) |
Декодирует строку HTML, полученную с кодировкой URL, и отправляет конечные выходные данные в поток выходных данных TextWriter. |
UrlDecode(String)
Расшифровывает строку в кодировке URL с последующим возвращением.
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
Параметры
- s
- String
Текстовая строка для декодирования.
Возвращаемое значение
Расшифрованный текст.
Примеры
В следующем примере показано, как декодировать по URL-адресу значение, полученное из строки запроса. Код находится в файле кода программной части для веб-страницы.
ReturnPage
ссылается на 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
Следующий пример аналогичен предыдущему, за исключением того, что в нем показано, как декодировать значение по URL-адресу из класса, который не находится в файле кода программной части.
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
Комментарии
Кодирование URL-адресов гарантирует, что все браузеры будут правильно передавать текст в строках URL-адресов. В некоторых браузерах могут быть усечены или повреждены такие символы, как вопросительный знак (?), амперсанд (&), знак косой черты (/) и пробелы. В результате эти символы должны быть закодированы в <a>
тегах или в строках запроса, где строки могут быть повторно отправлены браузером в строке запроса.
Этот метод является удобным способом доступа к методу HttpUtility.UrlDecode во время выполнения из приложения ASP.NET. Внутри этого метода используется HttpUtility.UrlDecode для декодирования строк.
В файле кода программной части для веб-страницы ASP.NET доступ к экземпляру HttpServerUtility класса можно получить через Server
свойство . В классе, который не находится в файле кода программной части, используйте для HttpContext.Current.Server
доступа к экземпляру HttpServerUtility класса .
За пределами веб-приложения используйте класс для WebUtility кодирования или декодирования значений.
Применяется к
UrlDecode(String, TextWriter)
Декодирует строку HTML, полученную с кодировкой URL, и отправляет конечные выходные данные в поток выходных данных 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)
Параметры
- s
- String
Декодируемая строка HTML.
- output
- TextWriter
Поток выходных данных TextWriter, содержащий расшифрованную строку.
Примеры
В следующем примере декодирует строку с именем EncodedString
(полученную в URL-адресе) в строку с именем 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()
Комментарии
Кодирование URL-адресов гарантирует, что все браузеры будут правильно передавать текст в строках URL-адресов. В некоторых браузерах могут быть усечены или повреждены такие символы, как вопросительный знак (?), амперсанд (&), знак косой черты (/) и пробелы. В результате эти символы должны быть закодированы в <a>
тегах или в строках запроса, где строки могут быть повторно отправлены браузером в строке запроса.
UrlDecode — это удобный способ доступа к методу HttpUtility.UrlDecode во время выполнения из ASP.NET приложения. На внутреннем сервере UrlDecode использует HttpUtility.UrlDecode для декодирования строк.
Чтобы кодировать или декодировать значения вне веб-приложения, используйте класс WebUtility.