HttpUtility Classe

Definizione

Fornisce metodi per la codifica e la decodifica degli URL durante l'elaborazione delle richieste Web. La classe non può essere ereditata.

public ref class HttpUtility sealed
public sealed class HttpUtility
type HttpUtility = class
Public NotInheritable Class HttpUtility
Ereditarietà
HttpUtility

Esempio

Nell'esempio di codice seguente viene illustrato l'uso dei UrlEncodemetodi e UrlDecodeParseQueryString della 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>

Commenti

La classe HttpUtility viene usata internamente dalla classe HttpServerUtility, i cui metodi e proprietà vengono esposti tramite l'oggetto intrinseco ASP.NET Server. Inoltre, la HttpUtility classe contiene metodi di utilità di codifica e decodifica che non sono accessibili da Server.

Per codificare o decodificare i valori all'esterno di un'applicazione Web, usare la WebUtility classe .

Costruttori

Nome Descrizione
HttpUtility()

Inizializza una nuova istanza della classe HttpUtility.

Metodi

Nome Descrizione
Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetType()

Ottiene il Type dell'istanza corrente.

(Ereditato da Object)
HtmlAttributeEncode(String, TextWriter)

Converte minimamente una stringa in una stringa con codifica HTML e invia la stringa codificata a un TextWriter flusso di output.

HtmlAttributeEncode(String)

Converte minimamente una stringa in una stringa con codifica HTML.

HtmlDecode(String, TextWriter)

Converte una stringa con codifica HTML in una stringa decodificata e invia la stringa decodificata a un TextWriter flusso di output.

HtmlDecode(String)

Converte una stringa con codifica HTML per la trasmissione HTTP in una stringa decodificata.

HtmlEncode(Object)

Converte la rappresentazione di stringa di un oggetto in una stringa con codifica HTML e restituisce la stringa codificata.

HtmlEncode(String, TextWriter)

Converte una stringa in una stringa con codifica HTML e restituisce l'output come TextWriter flusso di output.

HtmlEncode(String)

Converte una stringa in una stringa con codifica HTML.

JavaScriptStringEncode(String, Boolean)

Codifica una stringa.

JavaScriptStringEncode(String)

Codifica una stringa.

MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
ParseQueryString(String, Encoding)

Analizza una stringa di query in un NameValueCollection oggetto utilizzando l'oggetto specificato Encoding.

ParseQueryString(String)

Analizza una stringa di query in un NameValueCollection oggetto utilizzando UTF8 la codifica.

ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)
UrlDecode(Byte[], Encoding)

Converte una matrice di byte con codifica URL in una stringa decodificata usando l'oggetto di decodifica specificato.

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

Converte una matrice di byte con codifica URL in una stringa decodificata usando l'oggetto di codifica specificato, a partire dalla posizione specificata nella matrice e continuando per il numero specificato di byte.

UrlDecode(String, Encoding)

Converte una stringa con codifica URL in una stringa decodificata, usando l'oggetto di codifica specificato.

UrlDecode(String)

Converte una stringa codificata per la trasmissione in un URL in una stringa decodificata.

UrlDecodeToBytes(Byte[], Int32, Int32)

Converte una matrice con codifica URL di byte in una matrice decodificata di byte, a partire dalla posizione specificata nella matrice e continuando per il numero specificato di byte.

UrlDecodeToBytes(Byte[])

Converte una matrice con codifica URL di byte in una matrice decodificata di byte.

UrlDecodeToBytes(String, Encoding)

Converte una stringa con codifica URL in una matrice decodificata di byte usando l'oggetto di decodifica specificato.

UrlDecodeToBytes(String)

Converte una stringa con codifica URL in una matrice decodificata di byte.

UrlEncode(Byte[], Int32, Int32)

Converte una matrice di byte in una stringa con codifica URL, a partire dalla posizione specificata nella matrice e continuando per il numero di byte specificato.

UrlEncode(Byte[])

Converte una matrice di byte in una stringa URL codificata.

UrlEncode(String, Encoding)

Codifica una stringa URL usando l'oggetto di codifica specificato.

UrlEncode(String)

Codifica una stringa URL.

UrlEncodeToBytes(Byte[], Int32, Int32)

Converte una matrice di byte in una matrice di byte con codifica URL, a partire dalla posizione specificata nella matrice e continuando per il numero di byte specificato.

UrlEncodeToBytes(Byte[])

Converte una matrice di byte in una matrice con codifica URL di byte.

UrlEncodeToBytes(String, Encoding)

Converte una stringa in una matrice di byte con codifica URL usando l'oggetto di codifica specificato.

UrlEncodeToBytes(String)

Converte una stringa in una matrice di byte con codifica URL.

UrlEncodeUnicode(String)
Obsoleti.

Converte una stringa in una stringa Unicode.

UrlEncodeUnicodeToBytes(String)
Obsoleti.

Converte una stringa Unicode in una matrice di byte.

UrlPathEncode(String)

Non usare; destinato solo alla compatibilità del browser. Utilizzare il UrlEncode(String).

Si applica a

Vedi anche