Partilhar via


HttpUtility Classe

Definição

Fornece métodos para codificar e decodificar URLs durante o processamento de solicitações da Web. Essa 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 a seguir demonstra o uso dos UrlEncodemétodos e UrlDecodeParseQueryString 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>

Comentários

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

Para codificar ou decodificar valores fora de um aplicativo Web, use a classe WebUtility.

Construtores

HttpUtility()

Inicializa uma nova instância da classe HttpUtility.

Métodos

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
HtmlAttributeEncode(String)

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

HtmlAttributeEncode(String, TextWriter)

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

HtmlDecode(String)

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

HtmlDecode(String, TextWriter)

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

HtmlEncode(Object)

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

HtmlEncode(String)

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

HtmlEncode(String, TextWriter)

Converte uma cadeia de caracteres em uma cadeia de caracteres codificada em HTML e retorna o resultado como um fluxo TextWriter de saída.

JavaScriptStringEncode(String)

Codifica uma cadeia de caracteres.

JavaScriptStringEncode(String, Boolean)

Codifica uma cadeia de caracteres.

MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ParseQueryString(String)

Analisa uma cadeia de caracteres de consulta em um NameValueCollection usando codificação UTF8.

ParseQueryString(String, Encoding)

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

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

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

Converte uma matriz de bytes codificada em URL em uma cadeia de caracteres decodificada usando o objeto de decodificação especificado.

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

Converte uma matriz de bytes codificada em URL em uma cadeia de caracteres decodificada usando o objeto de codificação especificado na posição especificada na matriz e continuando para o número especificado de bytes.

UrlDecode(String)

Converte uma cadeia de caracteres codificada para transmissão em uma URL em uma cadeia de caracteres decodificada.

UrlDecode(String, Encoding)

Converte uma cadeia de caracteres codificada em URL em uma cadeia de caracteres decodificada usando o objeto de codificação especificado.

UrlDecodeToBytes(Byte[])

Converte uma matriz de bytes codificada como URL em uma matriz de bytes decodificada.

UrlDecodeToBytes(Byte[], Int32, Int32)

Converte uma matriz de bytes codificada como URL em uma matriz de bytes decodificada, começando na posição especificada na matriz e continuando pelo número de bytes especificado.

UrlDecodeToBytes(String)

Converte uma cadeia de caracteres codificada como URL em uma matriz de bytes decodificada.

UrlDecodeToBytes(String, Encoding)

Converte uma cadeia de caracteres codificada em URL em uma matriz de bytes decodificada usando o objeto de decodificação especificado.

UrlEncode(Byte[])

Converte uma matriz de bytes em uma cadeia de caracteres URL codificada.

UrlEncode(Byte[], Int32, Int32)

Converte uma matriz de bytes em uma cadeia de caracteres codificada de URL, começando na posição especificada na matriz e continuando para o número especificado de bytes.

UrlEncode(String)

Codifica uma cadeia de caracteres de URL.

UrlEncode(String, Encoding)

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

UrlEncodeToBytes(Byte[])

Converte uma matriz de bytes em uma matriz de bytes codificada como URL.

UrlEncodeToBytes(Byte[], Int32, Int32)

Converte uma matriz de bytes em uma matriz de bytes codificada como URL, começando na posição especificada na matriz e continuando pelo número de bytes especificado.

UrlEncodeToBytes(String)

Converte uma cadeia de caracteres em uma matriz de bytes codificada como URL.

UrlEncodeToBytes(String, Encoding)

Converte uma cadeia de caracteres em uma matriz de bytes codificada como URL usando o objeto de codificação especificado.

UrlEncodeUnicode(String)
Obsoleto.

Converte uma cadeia de caracteres em uma cadeia de caracteres Unicode.

UrlEncodeUnicodeToBytes(String)
Obsoleto.

Converte uma cadeia de caracteres Unicode em uma matriz de bytes.

UrlPathEncode(String)

Não use. Destinado apenas para compatibilidade com o navegador. Use UrlEncode(String).

Aplica-se a

Confira também