Win32 API 日本語リファレンス
ホームNetworking.HttpServer › HTTP_REQUEST_PROPERTY

HTTP_REQUEST_PROPERTY

列挙型
基底型i4

メンバー 15

名前10進16進説明
HttpRequestPropertyIsb00x0

Action: Query. PVOID Input/Output value: ULONG64

リクエストの理想的な送信バックログ サイズを取得します (SIO_WSK_QUERY_IDEAL_SEND_BACKLOG を参照してください)。

HttpRequestPropertyTcpInfoV010x1

Action: Query. PVOID Input/Output value: TCP_INFO_v0

リクエストの TCP_INFO_v0 統計情報を取得します。Qualifier パラメーターを使用します。

HttpRequestPropertyQuicStats20x2

Action: Query. PVOID Input/Output value: QUIC_STATISTICS

リクエストの QUIC_STATISTICS 統計情報を取得します。Qualifier パラメーターを使用します。

HttpRequestPropertyTcpInfoV130x3

Action: Query. PVOID Input/Output value: TCP_INFO_v1

リクエストの TCP_INFO_v1 統計情報を取得します。Qualifier パラメーターを使用します。

HttpRequestPropertySni40x4

Action: Query. PVOID Input/Output value: HTTP_REQUEST_PROPERTY_SNI

リクエストの TLS 接続に対する Server Name Indication を HTTP_REQUEST_PROPERTY_SNI で取得します。

HttpRequestPropertyStreamError50x5

Action: Set. PVOID Input/Output value: HTTP_REQUEST_PROPERTY_STREAM_ERROR

リクエストに (HTTP/2 または HTTP/3 の) HTTP_REQUEST_PROPERTY_STREAM_ERROR 構造体を設定します。HTTP_REQUEST_PROPERTY_STREAM_ERROR 構造体には、このプロパティの構成データが含まれます。

HttpRequestPropertyWskApiTimings60x6

Action: Query. PVOID Input/Output value: HTTP_WSK_API_TIMINGS

リクエストの HTTP_WSK_API_TIMINGS 統計情報を取得します。QUIC 以外のリクエスト (HTTP/1.1、HTTP/2) でのみ使用されます。このプロパティを使用するには追加の構成が必要です。「解説」を参照してください。

HttpRequestPropertyQuicApiTimings70x7

Action: Query. PVOID Input/Output value: HTTP_QUIC_API_TIMINGS

リクエストの HTTP_QUIC_API_TIMINGS 統計情報を取得します。HTTP/3 リクエストでのみ使用されます。このプロパティを使用するには追加の構成が必要です。「解説」を参照してください。

HttpRequestPropertyQuicStatsV280x8

Action: Query. PVOID Input/Output value: QUIC_STATISTICS_V2

リクエストの QUIC_STATISTICS_V2 統計情報を取得します。Qualifier パラメーターを使用します。

HttpRequestPropertyQuicStreamStats90x9

Action: Query. PVOID Input/Output value: QUIC_STREAM_STATISTICS

リクエストの QUIC_STREAM_STATISTICS 統計情報を取得します。

HttpRequestPropertyTcpInfoV2100xA

Action: Query. PVOID Input/Output value: TCP_INFO_v2

リクエストの拡張 TCP_INFO_v2 統計情報を取得します。Qualifier パラメーターを使用します。

HttpRequestPropertyTlsClientHello110xB

Action: Query. PVOID Input/Output value: BYTE[]

そのリクエストの接続開始時にクライアントから送信された TLS Client Hello メッセージの内容を取得します。このプロパティを使用するには追加の構成が必要です。「解説」を参照してください。

HttpRequestPropertyTransportIdleConnectionTimeout120xC

Action: Set. PVOID Input/Output value: USHORT

このリクエストがアイドル状態になった場合のタイムアウトを秒単位で設定します。

HttpRequestPropertyDscpTag130xD

Action: Set. PVOID Input/Output value: BYTE

このリクエストへの応答で送信されるすべてのパケットに、指定された BYTE 値の DSCP (differentiated services code point) タグを設定します。これは内部的には 6 ビットの値であるため、最大値は 0x3F です。

HttpRequestPropertyTlsCipherInfo140xE

Action: Query. PVOID Input/Output value: SecPkgContext_CipherInfo

この接続の TLS ハンドシェイクで選択された暗号スイートとパラメーターを取得します。

公式ドキュメント

HTTP_REQUEST_PROPERTY 列挙型は、HTTP Server API がリクエストに対して照会または設定できるように構成できるプロパティを定義します。

解説(Remarks)

HTTP_REQUEST_PROPERTY 列挙型の各値は、リクエストの構成を設定または照会するために使用されます。この列挙型のメンバーは、関連する構成構造体と共に HttpSetRequestProperty で使用され、構成パラメーターを定義します。

HttpRequestPropertyWskApiTimings および HttpRequestPropertyQuicApiTimings。これらのプロパティを使用するには、HTTP サービスを開始または再起動する前に、HKLM\System\CurrentControlSet\Services\Http\Parameters:EnableExtendedEvents レジストリ値を 0x1 に設定する必要があります。

HttpRequestPropertyTlsClientHello。この機能が利用可能かどうかを確認するには、HttpIsFeatureSupported を呼び出し、HttpFeatureCacheTlsClientHello を渡します。TLS Client Hello のキャッシュは接続ごとのコストが高いため、この機能を有効にするには、HTTP_SERVICE_CONFIG_SSL_FLAG_ENABLE_CACHE_CLIENT_HELLO を設定した HTTP_SERVICE_CONFIG_SSL_SET 構造体を pConfigInformation に指定して HttpSetServiceConfiguration を呼び出す必要があります (HTTP_SERVICE_CONFIG_SSL_PARAM を参照してください)。TLS Client Hello は固定長ではないため、このプロパティは NULL のバッファー ポインターで照会して、必要なバッファーのサイズを調べることができます。詳細については、HttpQueryRequestProperty の例を参照してください。

出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

各言語での定義

列挙メンバーの定義。HSP タブは #define global(値は16進)。

typedef enum HTTP_REQUEST_PROPERTY : int {
    HttpRequestPropertyIsb = 0,
    HttpRequestPropertyTcpInfoV0 = 1,
    HttpRequestPropertyQuicStats = 2,
    HttpRequestPropertyTcpInfoV1 = 3,
    HttpRequestPropertySni = 4,
    HttpRequestPropertyStreamError = 5,
    HttpRequestPropertyWskApiTimings = 6,
    HttpRequestPropertyQuicApiTimings = 7,
    HttpRequestPropertyQuicStatsV2 = 8,
    HttpRequestPropertyQuicStreamStats = 9,
    HttpRequestPropertyTcpInfoV2 = 10,
    HttpRequestPropertyTlsClientHello = 11,
    HttpRequestPropertyTransportIdleConnectionTimeout = 12,
    HttpRequestPropertyDscpTag = 13,
    HttpRequestPropertyTlsCipherInfo = 14
} HTTP_REQUEST_PROPERTY;
public enum HTTP_REQUEST_PROPERTY : int
{
    HttpRequestPropertyIsb = 0,
    HttpRequestPropertyTcpInfoV0 = 1,
    HttpRequestPropertyQuicStats = 2,
    HttpRequestPropertyTcpInfoV1 = 3,
    HttpRequestPropertySni = 4,
    HttpRequestPropertyStreamError = 5,
    HttpRequestPropertyWskApiTimings = 6,
    HttpRequestPropertyQuicApiTimings = 7,
    HttpRequestPropertyQuicStatsV2 = 8,
    HttpRequestPropertyQuicStreamStats = 9,
    HttpRequestPropertyTcpInfoV2 = 10,
    HttpRequestPropertyTlsClientHello = 11,
    HttpRequestPropertyTransportIdleConnectionTimeout = 12,
    HttpRequestPropertyDscpTag = 13,
    HttpRequestPropertyTlsCipherInfo = 14,
}
Public Enum HTTP_REQUEST_PROPERTY As Integer
    HttpRequestPropertyIsb = 0
    HttpRequestPropertyTcpInfoV0 = 1
    HttpRequestPropertyQuicStats = 2
    HttpRequestPropertyTcpInfoV1 = 3
    HttpRequestPropertySni = 4
    HttpRequestPropertyStreamError = 5
    HttpRequestPropertyWskApiTimings = 6
    HttpRequestPropertyQuicApiTimings = 7
    HttpRequestPropertyQuicStatsV2 = 8
    HttpRequestPropertyQuicStreamStats = 9
    HttpRequestPropertyTcpInfoV2 = 10
    HttpRequestPropertyTlsClientHello = 11
    HttpRequestPropertyTransportIdleConnectionTimeout = 12
    HttpRequestPropertyDscpTag = 13
    HttpRequestPropertyTlsCipherInfo = 14
End Enum
import enum

class HTTP_REQUEST_PROPERTY(enum.IntEnum):
    HttpRequestPropertyIsb = 0
    HttpRequestPropertyTcpInfoV0 = 1
    HttpRequestPropertyQuicStats = 2
    HttpRequestPropertyTcpInfoV1 = 3
    HttpRequestPropertySni = 4
    HttpRequestPropertyStreamError = 5
    HttpRequestPropertyWskApiTimings = 6
    HttpRequestPropertyQuicApiTimings = 7
    HttpRequestPropertyQuicStatsV2 = 8
    HttpRequestPropertyQuicStreamStats = 9
    HttpRequestPropertyTcpInfoV2 = 10
    HttpRequestPropertyTlsClientHello = 11
    HttpRequestPropertyTransportIdleConnectionTimeout = 12
    HttpRequestPropertyDscpTag = 13
    HttpRequestPropertyTlsCipherInfo = 14
// HTTP_REQUEST_PROPERTY
pub const HttpRequestPropertyIsb: i32 = 0;
pub const HttpRequestPropertyTcpInfoV0: i32 = 1;
pub const HttpRequestPropertyQuicStats: i32 = 2;
pub const HttpRequestPropertyTcpInfoV1: i32 = 3;
pub const HttpRequestPropertySni: i32 = 4;
pub const HttpRequestPropertyStreamError: i32 = 5;
pub const HttpRequestPropertyWskApiTimings: i32 = 6;
pub const HttpRequestPropertyQuicApiTimings: i32 = 7;
pub const HttpRequestPropertyQuicStatsV2: i32 = 8;
pub const HttpRequestPropertyQuicStreamStats: i32 = 9;
pub const HttpRequestPropertyTcpInfoV2: i32 = 10;
pub const HttpRequestPropertyTlsClientHello: i32 = 11;
pub const HttpRequestPropertyTransportIdleConnectionTimeout: i32 = 12;
pub const HttpRequestPropertyDscpTag: i32 = 13;
pub const HttpRequestPropertyTlsCipherInfo: i32 = 14;
// HTTP_REQUEST_PROPERTY
const (
	HttpRequestPropertyIsb int32 = 0
	HttpRequestPropertyTcpInfoV0 int32 = 1
	HttpRequestPropertyQuicStats int32 = 2
	HttpRequestPropertyTcpInfoV1 int32 = 3
	HttpRequestPropertySni int32 = 4
	HttpRequestPropertyStreamError int32 = 5
	HttpRequestPropertyWskApiTimings int32 = 6
	HttpRequestPropertyQuicApiTimings int32 = 7
	HttpRequestPropertyQuicStatsV2 int32 = 8
	HttpRequestPropertyQuicStreamStats int32 = 9
	HttpRequestPropertyTcpInfoV2 int32 = 10
	HttpRequestPropertyTlsClientHello int32 = 11
	HttpRequestPropertyTransportIdleConnectionTimeout int32 = 12
	HttpRequestPropertyDscpTag int32 = 13
	HttpRequestPropertyTlsCipherInfo int32 = 14
)
const
  HttpRequestPropertyIsb = 0;
  HttpRequestPropertyTcpInfoV0 = 1;
  HttpRequestPropertyQuicStats = 2;
  HttpRequestPropertyTcpInfoV1 = 3;
  HttpRequestPropertySni = 4;
  HttpRequestPropertyStreamError = 5;
  HttpRequestPropertyWskApiTimings = 6;
  HttpRequestPropertyQuicApiTimings = 7;
  HttpRequestPropertyQuicStatsV2 = 8;
  HttpRequestPropertyQuicStreamStats = 9;
  HttpRequestPropertyTcpInfoV2 = 10;
  HttpRequestPropertyTlsClientHello = 11;
  HttpRequestPropertyTransportIdleConnectionTimeout = 12;
  HttpRequestPropertyDscpTag = 13;
  HttpRequestPropertyTlsCipherInfo = 14;
// HTTP_REQUEST_PROPERTY
pub const HttpRequestPropertyIsb: i32 = 0;
pub const HttpRequestPropertyTcpInfoV0: i32 = 1;
pub const HttpRequestPropertyQuicStats: i32 = 2;
pub const HttpRequestPropertyTcpInfoV1: i32 = 3;
pub const HttpRequestPropertySni: i32 = 4;
pub const HttpRequestPropertyStreamError: i32 = 5;
pub const HttpRequestPropertyWskApiTimings: i32 = 6;
pub const HttpRequestPropertyQuicApiTimings: i32 = 7;
pub const HttpRequestPropertyQuicStatsV2: i32 = 8;
pub const HttpRequestPropertyQuicStreamStats: i32 = 9;
pub const HttpRequestPropertyTcpInfoV2: i32 = 10;
pub const HttpRequestPropertyTlsClientHello: i32 = 11;
pub const HttpRequestPropertyTransportIdleConnectionTimeout: i32 = 12;
pub const HttpRequestPropertyDscpTag: i32 = 13;
pub const HttpRequestPropertyTlsCipherInfo: i32 = 14;
const
  HttpRequestPropertyIsb* = 0
  HttpRequestPropertyTcpInfoV0* = 1
  HttpRequestPropertyQuicStats* = 2
  HttpRequestPropertyTcpInfoV1* = 3
  HttpRequestPropertySni* = 4
  HttpRequestPropertyStreamError* = 5
  HttpRequestPropertyWskApiTimings* = 6
  HttpRequestPropertyQuicApiTimings* = 7
  HttpRequestPropertyQuicStatsV2* = 8
  HttpRequestPropertyQuicStreamStats* = 9
  HttpRequestPropertyTcpInfoV2* = 10
  HttpRequestPropertyTlsClientHello* = 11
  HttpRequestPropertyTransportIdleConnectionTimeout* = 12
  HttpRequestPropertyDscpTag* = 13
  HttpRequestPropertyTlsCipherInfo* = 14
enum HTTP_REQUEST_PROPERTY : int {
    HttpRequestPropertyIsb = 0,
    HttpRequestPropertyTcpInfoV0 = 1,
    HttpRequestPropertyQuicStats = 2,
    HttpRequestPropertyTcpInfoV1 = 3,
    HttpRequestPropertySni = 4,
    HttpRequestPropertyStreamError = 5,
    HttpRequestPropertyWskApiTimings = 6,
    HttpRequestPropertyQuicApiTimings = 7,
    HttpRequestPropertyQuicStatsV2 = 8,
    HttpRequestPropertyQuicStreamStats = 9,
    HttpRequestPropertyTcpInfoV2 = 10,
    HttpRequestPropertyTlsClientHello = 11,
    HttpRequestPropertyTransportIdleConnectionTimeout = 12,
    HttpRequestPropertyDscpTag = 13,
    HttpRequestPropertyTlsCipherInfo = 14,
}
#define global HttpRequestPropertyIsb                            0x0
#define global HttpRequestPropertyTcpInfoV0                      0x1
#define global HttpRequestPropertyQuicStats                      0x2
#define global HttpRequestPropertyTcpInfoV1                      0x3
#define global HttpRequestPropertySni                            0x4
#define global HttpRequestPropertyStreamError                    0x5
#define global HttpRequestPropertyWskApiTimings                  0x6
#define global HttpRequestPropertyQuicApiTimings                 0x7
#define global HttpRequestPropertyQuicStatsV2                    0x8
#define global HttpRequestPropertyQuicStreamStats                0x9
#define global HttpRequestPropertyTcpInfoV2                      0xA
#define global HttpRequestPropertyTlsClientHello                 0xB
#define global HttpRequestPropertyTransportIdleConnectionTimeout 0xC
#define global HttpRequestPropertyDscpTag                        0xD
#define global HttpRequestPropertyTlsCipherInfo                  0xE