HttpListenerRequest Sınıf

Tanım

Bir nesneye HttpListener gelen HTTP isteğini açıklar. Bu sınıf devralınamaz.

public ref class HttpListenerRequest sealed
public sealed class HttpListenerRequest
type HttpListenerRequest = class
Public NotInheritable Class HttpListenerRequest
Devralma
HttpListenerRequest

Örnekler

Aşağıdaki kod örneğinde bir HttpListenerRequestalma ve yanıtlama işlemleri gösterilmektedir.

// 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

Açıklamalar

İstemci bir nesne tarafından HttpListener işlenen Tekdüzen Kaynak Tanımlayıcısı'na (URI) istekte bulunduğunda HttpListener , gönderen, istek ve istemciye gönderilen yanıt hakkında bilgi içeren bir HttpListenerContext nesne sağlar. özelliği, HttpListenerContext.Request isteği açıklayan nesneyi döndürür HttpListenerRequest .

HttpListenerRequest nesnesi istek hakkında istek dizesi, UserAgent dize ve istek HttpMethod gövdesi verileri gibi bilgileri içerir (özelliğine InputStream bakın).

İsteği yanıtlamak için, özelliğini kullanarak Response ilişkili yanıtı almanız gerekir.

Özellikler

AcceptTypes

İstemci tarafından kabul edilen MIME türlerini alır.

ClientCertificateError

İstemci tarafından sağlanan ile X509Certificate ilgili bir sorunu tanımlayan bir hata kodu alır.

ContentEncoding

İstekle gönderilen verilerle kullanılabilecek içerik kodlamasını alır.

ContentLength64

İstekte yer alan gövde verilerinin uzunluğunu alır.

ContentType

İstekte yer alan gövde verilerinin MIME türünü alır.

Cookies

İstekle gönderilen tanımlama bilgilerini alır.

HasEntityBody

İsteğin ilişkili gövde verilerine sahip olup olmadığını gösteren bir Boolean değer alır.

Headers

İstekte gönderilen üst bilgi adı/değer çiftleri koleksiyonunu alır.

HttpMethod

İstemci tarafından belirtilen HTTP yöntemini alır.

InputStream

İstemci tarafından gönderilen gövde verilerini içeren bir akış alır.

IsAuthenticated

Bu isteği gönderen istemcinin kimliğinin doğrulanıp doğrulanmamış olduğunu belirten bir Boolean değer alır.

IsLocal

İsteğin yerel bilgisayardan gönderilip gönderilmediğini belirten bir Boolean değer alır.

IsSecureConnection

İsteği göndermek için kullanılan TCP bağlantısının Güvenli Yuva Katmanı (SSL) protokolü kullanıp kullanmadığını belirten bir Boolean değer alır.

IsWebSocketRequest

Boolean TCP bağlantısının bir WebSocket isteği olup olmadığını gösteren bir değer alır.

KeepAlive

İstemcinin kalıcı bir Boolean bağlantı isteyip istemediğinizi belirten bir değer alır.

LocalEndPoint

İsteğin yönlendirildiği sunucu IP adresini ve bağlantı noktası numarasını alır.

ProtocolVersion

İstekte bulunan istemci tarafından kullanılan HTTP sürümünü alır.

QueryString

İstekte yer alan sorgu dizesini alır.

RawUrl

İstemci tarafından istenen URL bilgilerini (konak ve bağlantı noktası olmadan) alır.

RemoteEndPoint

İsteğin kaynaklandığı istemci IP adresini ve bağlantı noktası numarasını alır.

RequestTraceIdentifier

Gelen HTTP isteğinin istek tanımlayıcısını alır.

ServiceName

İstemcinin istek üzerine gönderdiği Hizmet Sağlayıcısı Adını (SPN) alır.

TransportContext

TransportContext İstemci isteğinin öğesini alır.

Url

Uri İstemci tarafından istenen nesneyi alır.

UrlReferrer

İstemciyi sunucuya yönlendiren kaynağın Tekdüzen Kaynak Tanımlayıcısını (URI) alır.

UserAgent

İstemci tarafından sunulan kullanıcı aracısını alır.

UserHostAddress

İsteğin yönlendirildiği sunucu IP adresini ve bağlantı noktası numarasını alır.

UserHostName

DNS adını ve sağlanırsa istemci tarafından belirtilen bağlantı noktası numarasını alır.

UserLanguages

Yanıt için tercih edilen doğal dilleri alır.

Yöntemler

BeginGetClientCertificate(AsyncCallback, Object)

İstemcinin X.509 v.3 sertifikası için zaman uyumsuz bir istek başlatır.

EndGetClientCertificate(IAsyncResult)

İstemcinin X.509 v.3 sertifikası için zaman uyumsuz isteği sonlandırır.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetClientCertificate()

İstemcinin X.509 v.3 sertifikasını alır.

GetClientCertificateAsync()

İstemcinin X.509 v.3 sertifikasını zaman uyumsuz bir işlem olarak alır.

GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Şunlara uygulanır

Ayrıca bkz.