HttpUtility 클래스

정의

웹 요청을 처리할 때 URL을 인코딩 및 디코딩하는 메서드를 제공합니다. 이 클래스는 상속할 수 없습니다.

public ref class HttpUtility sealed
public sealed class HttpUtility
type HttpUtility = class
Public NotInheritable Class HttpUtility
상속
HttpUtility

예제

다음 코드 예제에서는 클래스의 UrlEncodeUrlDecode 사용 및 ParseQueryString 메서드를 보여 줍니다HttpUtility.

<%@ 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>

설명

HttpUtility 클래스는 내장 ASP.NET Server 개체를 통해 메서드와 속성이 노출되는 HttpServerUtility 클래스에서 내부적으로 사용됩니다. 또한 클래스에는 HttpUtility 에서 액세스할 수 없는 인코딩 및 디코딩 유틸리티 메서드가 Server포함됩니다.

웹 애플리케이션 외부에서 값을 인코딩하거나 디코딩하려면 클래스를 WebUtility 사용합니다.

생성자

Name Description
HttpUtility()

HttpUtility 클래스의 새 인스턴스를 초기화합니다.

메서드

Name Description
Equals(Object)

지정한 개체와 현재 개체가 같은지 여부를 확인합니다.

(다음에서 상속됨 Object)
GetHashCode()

기본 해시 함수로 작동합니다.

(다음에서 상속됨 Object)
GetType()

현재 인스턴스의 Type 가져옵니다.

(다음에서 상속됨 Object)
HtmlAttributeEncode(String, TextWriter)

최소한 문자열을 HTML로 인코딩된 문자열로 변환하고 인코딩된 문자열을 출력 스트림으로 TextWriter 보냅니다.

HtmlAttributeEncode(String)

문자열을 HTML로 인코딩된 문자열로 최소로 변환합니다.

HtmlDecode(String, TextWriter)

HTML로 인코딩된 문자열을 디코딩된 문자열로 변환하고 디코딩된 문자열을 출력 스트림으로 TextWriter 보냅니다.

HtmlDecode(String)

HTTP 전송을 위해 HTML로 인코딩된 문자열을 디코딩된 문자열로 변환합니다.

HtmlEncode(Object)

개체의 문자열 표현을 HTML로 인코딩된 문자열로 변환하고 인코딩된 문자열을 반환합니다.

HtmlEncode(String, TextWriter)

문자열을 HTML로 인코딩된 문자열로 변환하고 출력을 출력 스트림으로 TextWriter 반환합니다.

HtmlEncode(String)

문자열을 HTML로 인코딩된 문자열로 변환합니다.

JavaScriptStringEncode(String, Boolean)

문자열을 인코딩합니다.

JavaScriptStringEncode(String)

문자열을 인코딩합니다.

MemberwiseClone()

현재 Object단순 복사본을 만듭니다.

(다음에서 상속됨 Object)
ParseQueryString(String, Encoding)

지정된 을 사용하여 쿼리 문자열을 NameValueCollection 구문 분석합니다 Encoding.

ParseQueryString(String)

쿼리 문자열을 using UTF8 인코딩으로 NameValueCollection 구문 분석합니다.

ToString()

현재 개체를 나타내는 문자열을 반환합니다.

(다음에서 상속됨 Object)
UrlDecode(Byte[], Encoding)

지정된 디코딩 개체를 사용하여 URL로 인코딩된 바이트 배열을 디코딩된 문자열로 변환합니다.

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

지정된 인코딩 개체를 사용하여 URL로 인코딩된 바이트 배열을 배열의 지정된 위치에서 시작하여 지정된 바이트 수에 대해 계속하여 디코딩된 문자열로 변환합니다.

UrlDecode(String, Encoding)

지정된 인코딩 개체를 사용하여 URL로 인코딩된 문자열을 디코딩된 문자열로 변환합니다.

UrlDecode(String)

URL의 전송을 위해 인코딩된 문자열을 디코딩된 문자열로 변환합니다.

UrlDecodeToBytes(Byte[], Int32, Int32)

URL로 인코딩된 바이트 배열을 배열의 지정된 위치에서 시작하여 지정된 바이트 수에 대해 계속하여 디코딩된 바이트 배열로 변환합니다.

UrlDecodeToBytes(Byte[])

URL로 인코딩된 바이트 배열을 디코딩된 바이트 배열로 변환합니다.

UrlDecodeToBytes(String, Encoding)

지정된 디코딩 개체를 사용하여 URL로 인코딩된 문자열을 디코딩된 바이트 배열로 변환합니다.

UrlDecodeToBytes(String)

URL로 인코딩된 문자열을 디코딩된 바이트 배열로 변환합니다.

UrlEncode(Byte[], Int32, Int32)

바이트 배열을 URL로 인코딩된 문자열로 변환합니다. 이 문자열은 배열의 지정된 위치에서 시작하여 지정된 바이트 수에 대해 계속됩니다.

UrlEncode(Byte[])

바이트 배열을 인코딩된 URL 문자열로 변환합니다.

UrlEncode(String, Encoding)

지정된 인코딩 개체를 사용하여 URL 문자열을 인코딩합니다.

UrlEncode(String)

URL 문자열을 인코딩합니다.

UrlEncodeToBytes(Byte[], Int32, Int32)

바이트 배열을 URL로 인코딩된 바이트 배열로 변환합니다. 이 배열은 배열의 지정된 위치에서 시작하여 지정된 바이트 수에 대해 계속됩니다.

UrlEncodeToBytes(Byte[])

바이트 배열을 URL로 인코딩된 바이트 배열로 변환합니다.

UrlEncodeToBytes(String, Encoding)

지정된 인코딩 개체를 사용하여 문자열을 URL로 인코딩된 바이트 배열로 변환합니다.

UrlEncodeToBytes(String)

문자열을 URL로 인코딩된 바이트 배열로 변환합니다.

UrlEncodeUnicode(String)
사용되지 않음.

문자열을 유니코드 문자열로 변환합니다.

UrlEncodeUnicodeToBytes(String)
사용되지 않음.

유니코드 문자열을 바이트 배열로 변환합니다.

UrlPathEncode(String)

사용하지 마세요. 브라우저 호환성을 위한 것입니다. UrlEncode(String)을 사용합니다.

적용 대상

추가 정보