HttpListenerRequest 클래스

정의

HttpListener 개체에 대한 들어오는 HTTP 요청을 설명합니다.Describes an incoming HTTP request to an HttpListener object. 이 클래스는 상속될 수 없습니다.This class cannot be inherited.

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

예제

다음 코드 예제에서는 HttpListenerRequest을 수신 하 고 응답 하는 방법을 보여 줍니다.The following code example demonstrates how to receive and respond to a HttpListenerRequest.

// This example requires the System and System.Net namespaces.
public static void SimpleListenerExample(string[] prefixes)
{
    if (!HttpListener.IsSupported)
    {
        Console.WriteLine ("Windows XP SP2 or Server 2003 is required to use the HttpListener class.");
        return;
    }
    // URI prefixes are required,
    // for example "http://contoso.com:8080/index/".
    if (prefixes == null || prefixes.Length == 0)
      throw new ArgumentException("prefixes");
    
    // Create a listener.
    HttpListener listener = new HttpListener();
    // Add the prefixes.
    foreach (string s in prefixes)
    {
        listener.Prefixes.Add(s);
    }
    listener.Start();
    Console.WriteLine("Listening...");
    // Note: The GetContext method blocks while waiting for a request. 
    HttpListenerContext context = listener.GetContext();
    HttpListenerRequest request = context.Request;
    // Obtain a response object.
    HttpListenerResponse response = context.Response;
    // Construct a response.
    string responseString = "<HTML><BODY> Hello world!</BODY></HTML>";
    byte[] buffer = System.Text.Encoding.UTF8.GetBytes(responseString);
    // Get a response stream and write the response to it.
    response.ContentLength64 = buffer.Length;
    System.IO.Stream output = response.OutputStream;
    output.Write(buffer,0,buffer.Length);
    // You must close the output stream.
    output.Close();
    listener.Stop();
}
Public Shared Sub SimpleListenerExample(prefixes As String())
    If Not HttpListener.IsSupported Then
        Console.WriteLine("Windows XP SP2 or Server 2003 is required to use the HttpListener class.")
        Return
    End If
    ' URI prefixes are required,
    ' for example "http://contoso.com:8080/index/".
    If prefixes Is Nothing Or prefixes.Length = 0 Then
        Throw New ArgumentException("prefixes")
    End If

    ' Create a listener
    Dim listener = New HttpListener()

    For Each s As String In prefixes
        listener.Prefixes.Add(s)
    Next
    listener.Start()
    Console.WriteLine("Listening...")
    ' Note: The GetContext method blocks while waiting for a request.
    Dim context As HttpListenerContext = listener.GetContext()
    Console.WriteLine("Listening...")
    ' Obtain a response object
    Dim request As HttpListenerRequest = context.Request
    ' Construct a response.
    Dim response As HttpListenerResponse = context.Response
    Dim responseString As String = "<HTML><BODY> Hello world!</BODY></HTML>"
    Dim buffer As Byte() = System.Text.Encoding.UTF8.GetBytes(responseString)
    ' Get a response stream and write the response to it.
    response.ContentLength64 = buffer.Length
    Dim output As System.IO.Stream = response.OutputStream
    output.Write(buffer, 0, buffer.Length)
    'You must close the output stream.
    output.Close()
    listener.Stop()
End Sub

설명

클라이언트에서 HttpListener 개체에 의해 처리 되는 URI (Uniform Resource Identifier)에 대 한 요청을 만들면 HttpListener은 발신자, 요청 및 클라이언트로 전송 된 응답에 대 한 정보를 포함 하는 HttpListenerContext 개체를 제공 합니다.When a client makes a request to a Uniform Resource Identifier (URI) handled by an HttpListener object, the HttpListener provides a HttpListenerContext object that contains information about the sender, the request, and the response that is sent to the client. HttpListenerContext.Request 속성은 요청을 설명 하는 HttpListenerRequest 개체를 반환 합니다.The HttpListenerContext.Request property returns the HttpListenerRequest object that describes the request.

HttpListenerRequest 개체는 요청 HttpMethod 문자열, UserAgent 문자열 및 요청 본문 데이터와 같은 요청에 대 한 정보를 포함 합니다 (InputStream 속성 참조).The HttpListenerRequest object contains information about the request, such as the request HttpMethod string, UserAgent string, and request body data (see the InputStream property).

요청에 회신 하려면 Response 속성을 사용 하 여 연결 된 응답을 가져와야 합니다.To reply to the request, you must get the associated response using the Response property.

속성

AcceptTypes

클라이언트에서 받아들일 수 있는 MIME 형식을 가져옵니다.Gets the MIME types accepted by the client.

ClientCertificateError

클라이언트에서 제공한 X509Certificate와 관련된 문제를 식별하는 오류 코드를 가져옵니다.Gets an error code that identifies a problem with the X509Certificate provided by the client.

ContentEncoding

요청과 함께 전송된 데이터에 사용할 수 있는 콘텐츠 인코딩을 가져옵니다.Gets the content encoding that can be used with data sent with the request.

ContentLength64

요청에 포함된 본문 데이터의 길이를 가져옵니다.Gets the length of the body data included in the request.

ContentType

요청에 포함된 본문 데이터의 MIME 형식을 가져옵니다.Gets the MIME type of the body data included in the request.

Cookies

요청과 함께 전송된 쿠키를 가져옵니다.Gets the cookies sent with the request.

HasEntityBody

요청에 관련된 본문 데이터가 있는지 여부를 나타내는 Boolean 값을 가져옵니다.Gets a Boolean value that indicates whether the request has associated body data.

Headers

요청에서 보낸 헤더 이름/값 쌍의 컬렉션을 가져옵니다.Gets the collection of header name/value pairs sent in the request.

HttpMethod

클라이언트에서 지정한 HTTP 메서드를 가져옵니다.Gets the HTTP method specified by the client.

InputStream

클라이언트에서 보낸 본문 데이터가 들어 있는 스트림을 가져옵니다.Gets a stream that contains the body data sent by the client.

IsAuthenticated

이 요청을 보내는 클라이언트가 인증되었는지 여부를 나타내는 Boolean 값입니다.Gets a Boolean value that indicates whether the client sending this request is authenticated.

IsLocal

요청을 로컬 컴퓨터에서 보냈는지 여부를 나타내는 Boolean 값을 가져옵니다.Gets a Boolean value that indicates whether the request is sent from the local computer.

IsSecureConnection

요청을 보내는 데 사용된 TCP 연결이 SSL(Secure Sockets Layer) 프로토콜을 사용하는지 여부를 나타내는 Boolean 값을 가져옵니다.Gets a Boolean value that indicates whether the TCP connection used to send the request is using the Secure Sockets Layer (SSL) protocol.

IsWebSocketRequest

TCP 연결이 WebSocket 요청인지 여부를 나타내는 Boolean 값을 가져옵니다.Gets a Boolean value that indicates whether the TCP connection was a WebSocket request.

KeepAlive

클라이언트에서 영구 연결을 요청하는지 여부를 나타내는 Boolean 값을 가져옵니다.Gets a Boolean value that indicates whether the client requests a persistent connection.

LocalEndPoint

요청이 전달되는 서버 IP 주소 및 포트 번호를 가져옵니다.Gets the server IP address and port number to which the request is directed.

ProtocolVersion

요청하는 클라이언트에서 사용하는 HTTP 버전을 가져옵니다.Gets the HTTP version used by the requesting client.

QueryString

요청에 포함된 쿼리 문자열을 가져옵니다.Gets the query string included in the request.

RawUrl

클라이언트에서 요청한 URL 정보(호스트 및 포트 제외)를 가져옵니다.Gets the URL information (without the host and port) requested by the client.

RemoteEndPoint

요청이 시작된 클라이언트 IP 주소 및 포트 번호를 가져옵니다.Gets the client IP address and port number from which the request originated.

RequestTraceIdentifier

들어오는 HTTP 요청의 요청 식별자를 가져옵니다.Gets the request identifier of the incoming HTTP request.

ServiceName

클라이언트가 요청에 대해 보낸 SPN(서비스 공급자 이름)을 가져옵니다.Gets the Service Provider Name (SPN) that the client sent on the request.

TransportContext

클라이언트 요청에 대한 TransportContext를 가져옵니다.Gets the TransportContext for the client request.

Url

클라이언트에서 요청한 Uri 개체를 가져옵니다.Gets the Uri object requested by the client.

UrlReferrer

클라이언트를 서버에 연결시킨 리소스의 URI(Uniform Resource Identifier)를 가져옵니다.Gets the Uniform Resource Identifier (URI) of the resource that referred the client to the server.

UserAgent

클라이언트에서 표시한 사용자 에이전트를 가져옵니다.Gets the user agent presented by the client.

UserHostAddress

요청이 전달되는 서버 IP 주소 및 포트 번호를 가져옵니다.Gets the server IP address and port number to which the request is directed.

UserHostName

DNS 이름과 클라이언트에서 지정한 포트 번호(제공된 경우)를 가져옵니다.Gets the DNS name and, if provided, the port number specified by the client.

UserLanguages

응답에 대해 기본 설정된 자연 언어를 가져옵니다.Gets the natural languages that are preferred for the response.

메서드

BeginGetClientCertificate(AsyncCallback, Object)

클라이언트의 X.509 v.3 인증서에 대한 비동기 요청을 시작합니다.Begins an asynchronous request for the client's X.509 v.3 certificate.

EndGetClientCertificate(IAsyncResult)

클라이언트의 X.509 v.3 인증서에 대한 비동기 요청을 끝냅니다.Ends an asynchronous request for the client's X.509 v.3 certificate.

Equals(Object)

지정한 개체와 현재 개체가 같은지 여부를 확인합니다.Determines whether the specified object is equal to the current object.

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

클라이언트의 X.509 v.3 인증서를 가져옵니다.Retrieves the client's X.509 v.3 certificate.

GetClientCertificateAsync()

클라이언트의 X.509 v.3 인증서를 비동기 작업으로 검색합니다.Retrieves the client's X.509 v.3 certificate as an asynchronous operation.

GetHashCode()

기본 해시 함수로 작동합니다.Serves as the default hash function.

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

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

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

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

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

현재 개체를 나타내는 문자열을 반환합니다.Returns a string that represents the current object.

(다음에서 상속됨 Object)

적용 대상

추가 정보