Condividi tramite


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 UrlEncodeUrlDecode metodi e ParseQueryString 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 HttpUtility classe viene usata internamente dalla HttpServerUtility classe, i cui metodi e proprietà vengono esposti tramite l'oggetto ASP.NET intrinseco Server . Inoltre, la HttpUtility classe contiene metodi di codifica e decodifica dell'utilità Serverche non sono accessibili da .

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

Costruttori

HttpUtility()

Inizializza una nuova istanza della classe HttpUtility.

Metodi

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 l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
HtmlAttributeEncode(String)

Esegue la conversione minima di una stringa in una stringa con codifica HTML.

HtmlAttributeEncode(String, TextWriter)

Esegue la conversione minima di una stringa in una stringa con codifica HTML e invia la stringa codificata a un flusso di output TextWriter.

HtmlDecode(String)

Converte una stringa che è stata codificata in formato HTML per la trasmissione HTTP in una stringa decodificata.

HtmlDecode(String, TextWriter)

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

HtmlEncode(Object)

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

HtmlEncode(String)

Esegue la conversione di una stringa in una stringa con codifica HTML.

HtmlEncode(String, TextWriter)

Converte una stringa in una stringa codificata in formato HTML e restituisce l'output come un flusso di output TextWriter.

JavaScriptStringEncode(String)

Esegue la codifica di una stringa.

JavaScriptStringEncode(String, Boolean)

Esegue la codifica di una stringa.

MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
ParseQueryString(String)

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

ParseQueryString(String, Encoding)

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

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 codificata in URL in una stringa decodificata usando il metodo di codifica specificato, a partire dalla posizione specificata nella matrice e continuando per il numero di byte specificato.

UrlDecode(String)

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

UrlDecode(String, Encoding)

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

UrlDecodeToBytes(Byte[])

Converte una matrice di byte codificata in URL in una matrice di byte decodificata.

UrlDecodeToBytes(Byte[], Int32, Int32)

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

UrlDecodeToBytes(String)

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

UrlDecodeToBytes(String, Encoding)

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

UrlEncode(Byte[])

Converte una matrice di byte in una stringa URL codificata.

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(String)

Codifica una stringa URL.

UrlEncode(String, Encoding)

Consente di codificare una stringa URL usando l'oggetto di codifica specificato.

UrlEncodeToBytes(Byte[])

Converte una matrice di byte in una matrice di byte codificata in URL.

UrlEncodeToBytes(Byte[], Int32, Int32)

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

UrlEncodeToBytes(String)

Consente di convertire una stringa in una matrice di byte codificata in URL.

UrlEncodeToBytes(String, Encoding)

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

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. Progettato solo per compatibilità browser. Usare UrlEncode(String).

Si applica a

Vedi anche