HttpUtility 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
웹 요청을 처리할 때 URL 인코딩 및 디코딩을 위한 메서드를 제공합니다. 이 클래스는 상속될 수 없습니다.
public ref class HttpUtility sealed
public sealed class HttpUtility
type HttpUtility = class
Public NotInheritable Class HttpUtility
- 상속
-
HttpUtility
예제
다음 코드 예제에서는 사용 하 여 보여 줍니다는 UrlEncode, UrlDecode 및 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 내부적으로 HttpServerUtility 사용 되는 클래스의 메서드 및 속성은 내장된 ASP.NET Server 개체를 통해 노출 됩니다. 또한 클래스에는 HttpUtility 에서 액세스할 수 없는 인코딩 및 디코딩 유틸리티 메서드가 Server포함됩니다.
웹 애플리케이션 외부의 값을 인코딩 또는 디코딩하려면 WebUtility 클래스를 사용합니다.
생성자
HttpUtility() |
HttpUtility 클래스의 새 인스턴스를 초기화합니다. |
메서드
Equals(Object) |
지정된 개체가 현재 개체와 같은지 확인합니다. (다음에서 상속됨 Object) |
GetHashCode() |
기본 해시 함수로 작동합니다. (다음에서 상속됨 Object) |
GetType() |
현재 인스턴스의 Type을 가져옵니다. (다음에서 상속됨 Object) |
HtmlAttributeEncode(String) |
적어도 문자열 하나를 HTML로 인코딩된 문자열로 변환합니다. |
HtmlAttributeEncode(String, TextWriter) |
최소한 문자열을 HTML로 인코딩된 문자열로 변환하고 인코딩된 문자열을 TextWriter 출력 스트림으로 보냅니다. |
HtmlDecode(String) |
HTTP 전송을 위해 HTML로 인코딩된 문자열을 디코딩된 문자열로 변환합니다. |
HtmlDecode(String, TextWriter) |
HTML로 인코딩된 문자열을 디코딩된 문자열로 변환하고 디코딩된 문자열을 TextWriter 출력 스트림으로 보냅니다. |
HtmlEncode(Object) |
개체의 문자열 표현을 HTML로 인코딩된 문자열로 변환하고 인코딩된 문자열을 반환합니다. |
HtmlEncode(String) |
문자열을 HTML 인코딩된 문자열로 변환합니다. |
HtmlEncode(String, TextWriter) |
문자열을 HTML 인코딩된 문자열로 변환하고 출력 스트림 TextWriter로 출력을 반환합니다. |
JavaScriptStringEncode(String) |
문자열을 인코딩합니다. |
JavaScriptStringEncode(String, Boolean) |
문자열을 인코딩합니다. |
MemberwiseClone() |
현재 Object의 단순 복사본을 만듭니다. (다음에서 상속됨 Object) |
ParseQueryString(String) |
NameValueCollection 인코딩을 사용하여 쿼리 문자열을 UTF8 으로 구문 분석합니다. |
ParseQueryString(String, Encoding) |
지정된 NameValueCollection 을 사용하여 쿼리 문자열을 Encoding에 구문 분석합니다. |
ToString() |
현재 개체를 나타내는 문자열을 반환합니다. (다음에서 상속됨 Object) |
UrlDecode(Byte[], Encoding) |
지정된 디코딩 개체를 사용하여 URL로 인코딩된 바이트 배열을 디코딩된 문자열로 변환합니다. |
UrlDecode(Byte[], Int32, Int32, Encoding) |
지정된 인코딩 개체를 사용하여 URL로 인코딩된 바이트 배열을 배열의 지정된 위치에서 시작하여 지정된 바이트 수까지 계속되는 디코딩된 문자열로 변환합니다. |
UrlDecode(String) |
URL에서 전송을 위해 인코딩된 문자열로 디코딩된 문자열로 변환합니다. |
UrlDecode(String, Encoding) |
지정된 인코딩 개체를 사용하여 URL로 인코딩된 문자열을 디코딩된 문자열로 변환합니다. |
UrlDecodeToBytes(Byte[]) |
URL로 인코딩된 바이트 배열을 디코딩된 바이트 배열로 변환합니다. |
UrlDecodeToBytes(Byte[], Int32, Int32) |
URL로 인코딩된 바이트 배열을, 배열의 지정된 위치에서 시작하여 지정된 바이트 수까지 계속되는 디코딩된 바이트 배열로 변환합니다. |
UrlDecodeToBytes(String) |
URL로 인코딩된 문자열을 디코딩된 바이트 배열로 변환합니다. |
UrlDecodeToBytes(String, Encoding) |
지정된 디코딩 개체를 사용하여 URL로 인코딩된 문자열을 디코딩된 바이트 배열로 변환합니다. |
UrlEncode(Byte[]) |
바이트 배열을 인코딩된 URL 문자열로 변환합니다. |
UrlEncode(Byte[], Int32, Int32) |
바이트 배열을 배열의 지정된 위치에서 시작되고 지정된 바이트 수까지 계속되는 URL 인코딩 문자열로 변환합니다. |
UrlEncode(String) |
URL 문자열을 인코딩합니다. |
UrlEncode(String, Encoding) |
지정된 인코딩 개체를 사용하여 URL 문자열을 인코딩합니다. |
UrlEncodeToBytes(Byte[]) |
배열 바이트를 URL로 인코딩된 바이트 배열로 변환합니다. |
UrlEncodeToBytes(Byte[], Int32, Int32) |
바이트 배열을, 배열의 지정된 위치에서 시작하여 지정된 바이트 수까지 계속되는 URL로 인코딩된 바이트 배열로 변환합니다. |
UrlEncodeToBytes(String) |
문자열을 URL로 인코딩된 바이트 배열로 변환합니다. |
UrlEncodeToBytes(String, Encoding) |
지정된 인코딩 개체를 사용하여 문자열을 URL로 인코딩된 바이트 배열로 변환합니다. |
UrlEncodeUnicode(String) |
사용되지 않음.
문자열을 유니코드 문자열로 변환합니다. |
UrlEncodeUnicodeToBytes(String) |
사용되지 않음.
유니코드 문자열을 바이트 배열로 변환합니다. |
UrlPathEncode(String) |
사용하지 마세요. 브라우저 호환성을 위해서만 제공됩니다. UrlEncode(String)을 사용하세요. |
적용 대상
추가 정보
.NET