HttpListener クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
単純で、プログラムによって制御できる HTTP プロトコル リスナーを提供します。 このクラスは継承できません。
public ref class HttpListener sealed : IDisposable
public sealed class HttpListener : IDisposable
type HttpListener = class
interface IDisposable
Public NotInheritable Class HttpListener
Implements IDisposable
- 継承
-
HttpListener
- 実装
例
// 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
注釈
この API の詳細については、「 HttpListener の補足 API 解説」を参照してください。
コンストラクター
HttpListener() |
HttpListener クラスの新しいインスタンスを初期化します。 |
プロパティ
AuthenticationSchemes |
クライアントの認証に使用する方式を取得または設定します。 |
AuthenticationSchemeSelectorDelegate |
クライアントの認証に使用するプロトコルを確認するために呼び出されるデリゲートを取得または設定します。 |
DefaultServiceNames |
登録済みプレフィックスによって決定される既定のサービス プロバイダー名 (SPN: Service Provider Name) の一覧を取得します。 |
ExtendedProtectionPolicy |
セッションの拡張保護に使用する ExtendedProtectionPolicy を取得または設定します。 |
ExtendedProtectionSelectorDelegate |
各要求に使用する ExtendedProtectionPolicy を決定するために呼び出すデリゲートを取得または設定します。 |
IgnoreWriteExceptions |
Boolean がクライアントに応答を送信したときに発生する例外をアプリケーションで受信するかどうかを指定する HttpListener 値を取得または設定します。 |
IsListening |
HttpListener が開始されているかどうかを示す値を取得します。 |
IsSupported |
現在のオペレーティング システムで HttpListener を使用できるかどうかを示す値を取得します。 |
Prefixes |
この HttpListener オブジェクトによって処理される URI (Uniform Resource Identifier) プレフィックスを取得します。 |
Realm |
この HttpListener オブジェクトに関連付けられているレルム (リソース パーティション) を取得または設定します。 |
TimeoutManager |
この HttpListener インスタンスのタイムアウト マネージャーです。 |
UnsafeConnectionNtlmAuthentication |
NTLM が使用されているときに、同じ TCP (Transmission Control Protocol) 接続を使用した別の要求を認証する必要があるかどうかを制御する Boolean 値を取得または設定します。 |
メソッド
Abort() |
すぐに HttpListener オブジェクトをシャットダウンし、現在キューに置かれているすべての要求を破棄します。 |
BeginGetContext(AsyncCallback, Object) |
受信要求の非同期の取得を開始します。 |
Close() |
HttpListener をシャットダウンします。 |
EndGetContext(IAsyncResult) |
受信クライアント要求を取得する非同期操作を完了します。 |
Equals(Object) |
指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (継承元 Object) |
GetContext() |
受信要求を待機し、受信するとその要求を返します。 |
GetContextAsync() |
非同期操作として受信要求を待ちます。 |
GetHashCode() |
既定のハッシュ関数として機能します。 (継承元 Object) |
GetType() |
現在のインスタンスの Type を取得します。 (継承元 Object) |
MemberwiseClone() |
現在の Object の簡易コピーを作成します。 (継承元 Object) |
Start() |
このインスタンスが受信要求を受信できるようにします。 |
Stop() |
このインスタンスは、新しい受信要求の受信を停止し、進行中のすべての要求の処理を終了します。 |
ToString() |
現在のオブジェクトを表す文字列を返します。 (継承元 Object) |
明示的なインターフェイスの実装
IDisposable.Dispose() |
この HttpListener オブジェクトに保持されているリソースを解放します。 |
適用対象
こちらもご覧ください
.NET