Поделиться через


перечисление HTTP_REQUEST_PROPERTY (http.h)

Перечисление HTTP_REQUEST_PROPERTY определяет свойства, которые можно настроить для запроса или задания API HTTP-сервера в запросе.

Синтаксис

typedef enum _HTTP_REQUEST_PROPERTY {
  HttpRequestPropertyIsb,
  HttpRequestPropertyTcpInfoV0,
  HttpRequestPropertyQuicStats,
  HttpRequestPropertyTcpInfoV1,
  HttpRequestPropertySni,
  HttpRequestPropertyStreamError,
  HttpRequestPropertyWskApiTimings,
  HttpRequestPropertyQuicApiTimings,
  HttpRequestPropertyQuicStatsV2,
  HttpRequestPropertyQuicStreamStats,
  HttpRequestPropertyTcpInfoV2,
  HttpRequestPropertyTlsClientHello,
  HttpRequestPropertyTransportIdleConnectionTimeout,
  HttpRequestPropertyDscpTag,
  HttpRequestPropertyTlsCipherInfo
} HTTP_REQUEST_PROPERTY, *PHTTP_REQUEST_PROPERTY;

Constants

 
HttpRequestPropertyIsb
Действие: запрос.
Значение ввода и вывода PVOID: ULONG64

Получение идеального размера невыполненной отправки запроса (см. SIO_WSK_QUERY_IDEAL_SEND_BACKLOG).
HttpRequestPropertyTcpInfoV0
Действие: запрос.
Значение ввода и вывода PVOID: TCP_INFO_v0

Получение статистики TCP_INFO_v0 для запроса. Использует параметр квалификатора .
HttpRequestPropertyQuicStats
Действие: запрос.
Значение ввода и вывода PVOID: QUIC_STATISTICS

Получение статистики QUIC_STATISTICS запроса. Использует параметр квалификатора .
HttpRequestPropertyTcpInfoV1
Действие: запрос.
Значение ввода и вывода PVOID: TCP_INFO_v1

Получение статистики TCP_INFO_v1 запроса. Использует параметр квалификатора .
HttpRequestPropertySni
Действие: запрос.
Значение ввода и вывода PVOID: HTTP_REQUEST_PROPERTY_SNI

Получите указание имени сервера для подключения TLS запроса в HTTP_REQUEST_PROPERTY_SNI.
HttpRequestPropertyStreamError
Действие: set.
Значение ввода и вывода PVOID: HTTP_REQUEST_PROPERTY_STREAM_ERROR

Задайте для запроса HTTP_REQUEST_PROPERTY_STREAM_ERROR структуру (HTTP/2 или HTTP/3). Структура HTTP_REQUEST_PROPERTY_STREAM_ERROR содержит данные конфигурации для этого свойства.
HttpRequestPropertyWskApiTimings
Действие: запрос.
Значение ввода и вывода PVOID: HTTP_WSK_API_TIMINGS

Получение статистики HTTP_WSK_API_TIMINGS запроса. Используется только для запросов, отличных от QUIC (HTTP/1.1, HTTP/2). Для этого свойства требуется дополнительная конфигурация для включения его использования; см. примечания.
HttpRequestPropertyQuicApiTimings
Действие: запрос.
Значение ввода и вывода PVOID: HTTP_QUIC_API_TIMINGS

Получение статистики HTTP_QUIC_API_TIMINGS для запроса. Используется только для запросов HTTP/3. Для этого свойства требуется дополнительная конфигурация для включения его использования; см. примечания.
HttpRequestPropertyQuicStatsV2
Действие: запрос.
Значение ввода и вывода PVOID: QUIC_STATISTICS_V2

Получение статистики QUIC_STATISTICS_V2 для запроса. Использует параметр квалификатора .
HttpRequestPropertyQuicStreamStats
Действие: запрос.
Значение ввода и вывода PVOID: QUIC_STREAM_STATISTICS

Получение статистики QUIC_STREAM_STATISTICS запроса.
HttpRequestPropertyTcpInfoV2
Действие: запрос.
Значение ввода и вывода PVOID: TCP_INFO_v2

Получение расширенной TCP_INFO_v2 статистики для запроса. Использует параметр квалификатора .
HttpRequestPropertyTlsClientHello
Действие: запрос.
Значение ввода и вывода PVOID: BYTE[]

Извлеките содержимое сообщения TLS Client Hello, отправляемого клиентом в начале подключения для этого запроса. Для этого свойства требуется дополнительная конфигурация для включения его использования; см. примечания.
HttpRequestPropertyTransportIdleConnectionTimeout
Действие: set.
Значение ввода и вывода PVOID: USHORT

Задайте время ожидания в секундах, если этот запрос неактивный.
HttpRequestPropertyDscpTag
Действие: set.
Значение ввода и вывода PVOID: BYTE

Задайте тег точки кода служб (DSCP) заданному значению BYTE на всех пакетах, отправленных в ответе на этот запрос. Это 6-разрядное значение внутри системы, поэтому максимальное значение равно 0x3F.
HttpRequestPropertyTlsCipherInfo
Действие: запрос.
Значение ввода и вывода PVOID: SecPkgContext_CipherInfo

Получите набор шифров и параметры, выбранные для этого подключения, в подтверждении TLS.

Замечания

Типы перечисления HTTP_REQUEST_PROPERTY используются для задания или запроса конфигураций в запросе. Элемент этого перечисления вместе со связанной структурой конфигурации используется HttpSetRequestProperty для определения параметров конфигурации.

HttpRequestPropertyWskApiTimings и HttpRequestPropertyQuicApiTimings. Для этих свойств необходимо HKLM\System\CurrentControlSet\Services\Http\Parameters:EnableExtendedEvents задать значение реестра для 0x1 перед запуском или перезапуском службы HTTP.

HttpRequestPropertyTlsClientHello. Чтобы подтвердить доступность этой функции, вызовите HttpIsFeatureSupported и передайте HttpFeatureCacheTlsClientHello. Так как кэширование клиента TLS Hello дорого для каждого подключения, чтобы включить эту функцию, необходимо вызвать HttpSetServiceConfiguration с помощью структуры HTTP_SERVICE_CONFIG_SSL_SET в pConfigInformation с набором HTTP_SERVICE_CONFIG_SSL_FLAG_ENABLE_CACHE_CLIENT_HELLO (см. HTTP_SERVICE_CONFIG_SSL_PARAM). Так как у клиента TLS Hello нет фиксированной длины, это свойство можно запросить с помощью указателя на буфер NULL, чтобы определить размер нужного буфера; Дополнительные сведения см. в примере в HttpQueryRequestProperty .

Требования

Требование Ценность
Header http.h

См. также

HttpSetRequestProperty