HttpUtility Classe

Definição

Fornece métodos para codificar e decodificar URLs ao processar pedidos Web. Esta classe não pode ser herdada.

public ref class HttpUtility sealed
public sealed class HttpUtility
type HttpUtility = class
Public NotInheritable Class HttpUtility
Herança
HttpUtility

Exemplos

O exemplo de código seguinte demonstra a utilização dos UrlEncodemétodos , UrlDecode e ParseQueryString da HttpUtility classe.

<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

    protected void Page_Load(object sender, EventArgs e)
    {
        String currurl = HttpContext.Current.Request.RawUrl;
        String querystring = null;

        // Check to make sure some query string variables
        // exist and if not add some and redirect.
        int iqs = currurl.IndexOf('?');
        if (iqs == -1)
        {
            String redirecturl = currurl + "?var1=1&var2=2+2%2f3&var1=3";
            Response.Redirect(redirecturl, true);
        }
        // If query string variables exist, put them in
        // a string.
        else if (iqs >= 0)
        {
            querystring = (iqs < currurl.Length - 1) ? currurl.Substring(iqs + 1) : String.Empty;
        }

        // Parse the query string variables into a NameValueCollection.
        NameValueCollection qscoll = HttpUtility.ParseQueryString(querystring);

        // Iterate through the collection.
        StringBuilder sb = new StringBuilder();
        foreach (String s in qscoll.AllKeys)
        {
            sb.Append(s + " - " + qscoll[s] + "<br />");
        }

        // Write the results to the appropriate labels.
        ParseOutput.Text = sb.ToString();
        UrlRawOutput.Text = currurl;
        UrlEncodedOutput.Text = HttpUtility.UrlEncode(currurl);
        UrlDecodedOutput.Text = HttpUtility.UrlDecode(currurl);
    }
</script>


<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>HttpUtility Example</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
      The raw url is: <br />
      <asp:Label  id="UrlRawOutput"
                  runat="server" />
      <br /><br />
      The url encoded is: <br />
      <asp:Label  id="UrlEncodedOutput"
                  runat="server" />
      <br /><br />
      The url decoded is: <br />
      <asp:Label  id="UrlDecodedOutput"
                  runat="server" />
      <br /><br />
      The query string NameValueCollection is: <br />
      <asp:Label  id="ParseOutput"
                  runat="server" />
    </div>
    </form>
</body>
</html>
<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)

        Dim currurl As String = HttpContext.Current.Request.RawUrl
        Dim querystring As String = Nothing
    
        ' Check to make sure some query string variables
        ' exist and if not add some and redirect.
        Dim iqs As Int32 = currurl.IndexOf("?".ToCharArray())
        If (iqs = -1) Then
      
            Dim redirecturl As String = currurl & "?var1=1&var2=2+2%2f3&var1=3"
            Response.Redirect(redirecturl, True)
      
            ' If query string variables exist, put them in
            ' a string.
        ElseIf (iqs >= 0) Then
      
            If (iqs < currurl.Length - 1) Then
                querystring = currurl.Substring(iqs + 1)
            End If
          
        End If

        ' Parse the query string variables into a NameValueCollection.
        Dim qscoll As NameValueCollection = HttpUtility.ParseQueryString(querystring)
    
        ' Iterate through the collection.
        Dim sb As New StringBuilder()
        For Each s As String In qscoll.AllKeys
      
            sb.Append(s & " - " & qscoll(s) & "<br />")
    
        Next s
    
        ' Write the results to the appropriate labels.
        ParseOutput.Text = sb.ToString()
        UrlRawOutput.Text = currurl
        UrlEncodedOutput.Text = HttpUtility.UrlEncode(currurl)
        UrlDecodedOutput.Text = HttpUtility.UrlDecode(currurl)
   
    End Sub
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>HttpUtility Example</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
      The raw url is: <br />
      <asp:Label  id="UrlRawOutput"
                  runat="server" />
      <br /><br />
      The url encoded is: <br />
      <asp:Label  id="UrlEncodedOutput"
                  runat="server" />
      <br /><br />
      The url decoded is: <br />
      <asp:Label  id="UrlDecodedOutput"
                  runat="server" />
      <br /><br />
      The query string NameValueCollection is: <br />
      <asp:Label  id="ParseOutput"
                  runat="server" />    
    </div>
    </form>
</body>
</html>

Observações

A classe HttpUtility é usada internamente pela classe HttpServerUtility, cujos métodos e propriedades são expostos através do objeto intrínseco ASP.NET Server. Adicionalmente, a HttpUtility classe contém métodos utilitários de codificação e decodificação que não são acessíveis a partir do Server.

Para codificar ou decodificar valores fora de uma aplicação web, use a WebUtility classe.

Construtores

Name Description
HttpUtility()

Inicializa uma nova instância da HttpUtility classe.

Métodos

Name Description
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como função de hash predefinida.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
HtmlAttributeEncode(String, TextWriter)

Converte minimamente uma string numa string codificada em HTML e envia a string codificada para um TextWriter fluxo de saída.

HtmlAttributeEncode(String)

Converte minimamente uma string numa string codificada em HTML.

HtmlDecode(String, TextWriter)

Converte uma cadeia que foi codificada em HTML numa cadeia decodificada e envia a cadeia decodificada para um TextWriter fluxo de saída.

HtmlDecode(String)

Converte uma cadeia que foi codificada em HTML para transmissão HTTP numa cadeia decodificada.

HtmlEncode(Object)

Converte a representação de uma cadeia de caracteres de um objeto numa cadeia codificada em HTML e devolve a cadeia codificada.

HtmlEncode(String, TextWriter)

Converte uma string numa string codificada em HTML e devolve a saída como um TextWriter fluxo de saída.

HtmlEncode(String)

Converte uma cadeia de caracteres em uma cadeia de caracteres codificada em HTML.

JavaScriptStringEncode(String, Boolean)

Codifica uma corda.

JavaScriptStringEncode(String)

Codifica uma corda.

MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
ParseQueryString(String, Encoding)

Analisa uma cadeia de consulta em um NameValueCollection usando o especificado Encoding.

ParseQueryString(String)

Analisa uma cadeia de consulta num NameValueCollection usando UTF8 codificação.

ToString()

Devolve uma cadeia que representa o objeto atual.

(Herdado de Object)
UrlDecode(Byte[], Encoding)

Converte um array de bytes codificado por URL numa string decodificada usando o objeto de decodificação especificado.

UrlDecode(Byte[], Int32, Int32, Encoding)

Converte um array de bytes codificado por URL numa string decodificada usando o objeto de codificação especificado, começando na posição especificada no array e continuando pelo número especificado de bytes.

UrlDecode(String, Encoding)

Converte uma cadeia codificada por URL numa cadeia decodificada, usando o objeto de codificação especificado.

UrlDecode(String)

Converte uma cadeia que foi codificada para transmissão numa URL numa cadeia decodificada.

UrlDecodeToBytes(Byte[], Int32, Int32)

Converte um array codificado por URL de bytes num array decodificado de bytes, começando na posição especificada no array e continuando pelo número especificado de bytes.

UrlDecodeToBytes(Byte[])

Converte um array codificado por URL de bytes num array decodificado de bytes.

UrlDecodeToBytes(String, Encoding)

Converte uma string codificada por URL num array decodificado de bytes usando o objeto de decodificação especificado.

UrlDecodeToBytes(String)

Converte uma cadeia codificada em URL num array decodificado de bytes.

UrlEncode(Byte[], Int32, Int32)

Converte um array de bytes numa string codificada por URL, começando na posição especificada no array e continuando pelo número especificado de bytes.

UrlEncode(Byte[])

Converte um array de bytes numa cadeia de URL codificada.

UrlEncode(String, Encoding)

Codifica uma cadeia de URL usando o objeto de codificação especificado.

UrlEncode(String)

Codifica uma cadeia de URL.

UrlEncodeToBytes(Byte[], Int32, Int32)

Converte um array de bytes num array codificado por URL de bytes, começando na posição especificada no array e continuando pelo número especificado de bytes.

UrlEncodeToBytes(Byte[])

Converte um array de bytes num array de bytes codificado por URL.

UrlEncodeToBytes(String, Encoding)

Converte uma string num array codificado por URL de bytes usando o objeto de codificação especificado.

UrlEncodeToBytes(String)

Converte uma string num array de bytes codificado por URL.

UrlEncodeUnicode(String)
Obsoleto.

Converte uma string numa string Unicode.

UrlEncodeUnicodeToBytes(String)
Obsoleto.

Converte uma string Unicode num array de bytes.

UrlPathEncode(String)

Não usar; destinado apenas à compatibilidade do navegador. Utilize UrlEncode(String).

Aplica-se a

Ver também