Partager via


énumération HTTP_REQUEST_PROPERTY (http.h)

L’énumération HTTP_REQUEST_PROPERTY définit les propriétés que vous pouvez configurer pour être interrogées ou définies par l’API serveur HTTP sur une requête.

Syntaxe

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
Action : Requête.
Valeur d’entrée/sortie PVOID : ULONG64

Récupérez la taille de backlog d’envoi idéale pour une requête (voir SIO_WSK_QUERY_IDEAL_SEND_BACKLOG).
HttpRequestPropertyTcpInfoV0
Action : Requête.
Valeur d’entrée/sortie PVOID : TCP_INFO_v0

Récupérez les statistiques TCP_INFO_v0 pour une requête. Utilise le paramètre Qualificateur .
HttpRequestPropertyQuicStats
Action : Requête.
Valeur d’entrée/sortie PVOID : QUIC_STATISTICS

Récupérez les statistiques QUIC_STATISTICS pour une requête. Utilise le paramètre Qualificateur .
HttpRequestPropertyTcpInfoV1
Action : Requête.
Valeur d’entrée/sortie PVOID : TCP_INFO_v1

Récupérez les statistiques TCP_INFO_v1 pour une requête. Utilise le paramètre Qualificateur .
HttpRequestPropertySni
Action : Requête.
Valeur d’entrée/sortie PVOID : HTTP_REQUEST_PROPERTY_SNI

Récupérez l’indication du nom du serveur pour la connexion TLS de la requête, dans un HTTP_REQUEST_PROPERTY_SNI.
HttpRequestPropertyStreamError
Action : définir.
Valeur d’entrée/sortie PVOID : HTTP_REQUEST_PROPERTY_STREAM_ERROR

Définissez un struct (HTTP/2 ou HTTP/3) HTTP_REQUEST_PROPERTY_STREAM_ERROR sur une requête. La structure HTTP_REQUEST_PROPERTY_STREAM_ERROR contient les données de configuration de cette propriété.
HttpRequestPropertyWskApiTimings
Action : Requête.
Valeur d’entrée/sortie PVOID : HTTP_WSK_API_TIMINGS

Récupérez les statistiques HTTP_WSK_API_TIMINGS pour une requête. Utilisé uniquement pour les requêtes non-QUIC (HTTP/1.1, HTTP/2). Cette propriété nécessite une configuration supplémentaire pour activer son utilisation ; voir Remarques.
HttpRequestPropertyQuicApiTimings
Action : Requête.
Valeur d’entrée/sortie PVOID : HTTP_QUIC_API_TIMINGS

Récupérez les statistiques HTTP_QUIC_API_TIMINGS pour une requête. Utilisé uniquement pour les requêtes HTTP/3. Cette propriété nécessite une configuration supplémentaire pour activer son utilisation ; voir Remarques.
HttpRequestPropertyQuicStatsV2
Action : Requête.
Valeur d’entrée/sortie PVOID : QUIC_STATISTICS_V2

Récupérez les statistiques QUIC_STATISTICS_V2 pour une requête. Utilise le paramètre Qualificateur .
HttpRequestPropertyQuicStreamStats
Action : Requête.
Valeur d’entrée/sortie PVOID : QUIC_STREAM_STATISTICS

Récupérez les statistiques QUIC_STREAM_STATISTICS pour une requête.
HttpRequestPropertyTcpInfoV2
Action : Requête.
Valeur d’entrée/sortie PVOID : TCP_INFO_v2

Récupérez les statistiques de TCP_INFO_v2 étendues pour une requête. Utilise le paramètre Qualificateur .
HttpRequestPropertyTlsClientHello
Action : Requête.
Valeur d’entrée/sortie PVOID : BYTE[]

Récupérez le contenu du message Hello du client TLS envoyé par le client au début de la connexion pour cette demande. Cette propriété nécessite une configuration supplémentaire pour activer son utilisation ; voir Remarques.
HttpRequestPropertyTransportIdleConnectionTimeout
Action : définir.
Valeur d’entrée/sortie PVOID : USHORT

Définissez un délai d’expiration en secondes si cette requête est inactive.
HttpRequestPropertyDscpTag
Action : définir.
Valeur d’entrée/sortie PVOID : BYTE

Définissez la balise de point de code des services différenciés (DSCP) sur la valeur BYTE fournie sur tous les paquets envoyés dans la réponse à cette demande. Il s’agit d’une valeur 6 bits en interne, de sorte que la valeur maximale est 0x3F.
HttpRequestPropertyTlsCipherInfo
Action : Requête.
Valeur d’entrée/sortie PVOID : SecPkgContext_CipherInfo

Récupérez la suite de chiffrement et les paramètres sélectionnés pour cette connexion dans l’établissement d’une liaison TLS.

Remarques

Les types d’énumération HTTP_REQUEST_PROPERTY sont utilisés pour définir ou interroger les configurations sur une demande. Un membre de cette énumération avec la structure de configuration associée est utilisé par HttpSetRequestProperty pour définir les paramètres de configuration.

HttpRequestPropertyWskApiTimings et HttpRequestPropertyQuicApiTimings. Ces propriétés nécessitent que la HKLM\System\CurrentControlSet\Services\Http\Parameters:EnableExtendedEvents valeur de Registre soit définie sur 0x1 avant de démarrer ou de redémarrer le service HTTP.

HttpRequestPropertyTlsClientHello. Pour confirmer la disponibilité de cette fonctionnalité, appelez HttpIsFeatureSupported et transmettez HttpFeatureCacheTlsClientHello. Étant donné que la mise en cache du client TLS Hello est coûteuse par connexion, pour activer cette fonctionnalité, vous devez appeler HttpSetServiceConfiguration avec un struct HTTP_SERVICE_CONFIG_SSL_SET dans pConfigInformation avec HTTP_SERVICE_CONFIG_SSL_FLAG_ENABLE_CACHE_CLIENT_HELLO set (voir HTTP_SERVICE_CONFIG_SSL_PARAM). Étant donné qu’un client TLS Hello n’a pas de longueur fixe, cette propriété peut être interrogée avec un pointeur de mémoire tampon NULL pour déterminer la taille d’une mémoire tampon dont vous avez besoin ; consultez l’exemple dans HttpQueryRequestProperty pour plus d’informations.

Spécifications

Requirement Valeur
Header http.h

Voir aussi

HttpSetRequestProperty