Partager via


énumération WS_LISTENER_PROPERTY_ID (webservices.h)

Chaque propriété d’écouteur est de type WS_LISTENER_PROPERTY, est identifiée par un ID et a une valeur associée. Si aucune propriété n’est spécifiée lors de la création de l’écouteur, sa valeur par défaut est utilisée.

Syntax

typedef enum {
  WS_LISTENER_PROPERTY_LISTEN_BACKLOG = 0,
  WS_LISTENER_PROPERTY_IP_VERSION = 1,
  WS_LISTENER_PROPERTY_STATE = 2,
  WS_LISTENER_PROPERTY_ASYNC_CALLBACK_MODEL = 3,
  WS_LISTENER_PROPERTY_CHANNEL_TYPE = 4,
  WS_LISTENER_PROPERTY_CHANNEL_BINDING = 5,
  WS_LISTENER_PROPERTY_CONNECT_TIMEOUT = 6,
  WS_LISTENER_PROPERTY_IS_MULTICAST = 7,
  WS_LISTENER_PROPERTY_MULTICAST_INTERFACES = 8,
  WS_LISTENER_PROPERTY_MULTICAST_LOOPBACK = 9,
  WS_LISTENER_PROPERTY_CLOSE_TIMEOUT = 10,
  WS_LISTENER_PROPERTY_TO_HEADER_MATCHING_OPTIONS = 11,
  WS_LISTENER_PROPERTY_TRANSPORT_URL_MATCHING_OPTIONS = 12,
  WS_LISTENER_PROPERTY_CUSTOM_LISTENER_CALLBACKS = 13,
  WS_LISTENER_PROPERTY_CUSTOM_LISTENER_PARAMETERS = 14,
  WS_LISTENER_PROPERTY_CUSTOM_LISTENER_INSTANCE = 15,
  WS_LISTENER_PROPERTY_DISALLOWED_USER_AGENT = 16
} WS_LISTENER_PROPERTY_ID;

Constantes

 
WS_LISTENER_PROPERTY_LISTEN_BACKLOG
Valeur : 0
Utilisé avec WsCreateListener ou WsGetListenerProperty pour WS_TCP_CHANNEL_BINDING.


Le membre de valeur associé de la structure WS_LISTENER_PROPERTY est un ULONG.

Cela contrôle la longueur maximale de la file d’attente des connexions en attente. Si la valeur est définie sur
SOMAXCONN, le backlog sera défini sur une valeur raisonnable maximale.
WS_LISTENER_PROPERTY_IP_VERSION
Valeur : 1
Utilisé avec WsCreateListener ou WsGetListenerProperty pour WS_TCP_CHANNEL_BINDING ou WS_UDP_CHANNEL_BINDING.


Le membre de valeur associé de la structure WS_LISTENER_PROPERTY est une valeur WS_IP_VERSION .

Cette propriété spécifie la version IP que l’écouteur doit utiliser.


La valeur par défaut est WS_IP_VERSION_AUTO.
WS_LISTENER_PROPERTY_STATE
Valeur : 2
Utilisé avec WsGetListenerProperty pour tous les types de canaux.



Le membre de valeur associé de la structure WS_LISTENER_PROPERTY est une valeur WS_LISTENER_STATE .

Retourne le WS_LISTENER_STATE actuel de l’écouteur. La valeur retournée est une instantané de l’état actuel.
possible que l’état ait changé avant que l’appelant ait
a eu l’occasion d’examiner la valeur.
WS_LISTENER_PROPERTY_ASYNC_CALLBACK_MODEL
Valeur : 3
Utilisé avec WsCreateListener ou WsGetListenerProperty pour tous les types de canaux.


Le membre de valeur associé de la structure WS_LISTENER_PROPERTY est une valeur WS_CALLBACK_MODEL .

Cette valeur indique le modèle de rappel asynchrone préféré lors de l’émission
opérations asynchrones pour l’écouteur ou les canaux qui sont créés pour celui-ci
à l’aide de WsCreateChannelForListener.


La valeur par défaut est WS_LONG_CALLBACK.


Le WS_SERVICE_HOST prend uniquement en charge WS_LONG_CALLBACK comme valeur acceptable
pour cette propriété.
WS_LISTENER_PROPERTY_CHANNEL_TYPE
Valeur : 4
Utilisé avec WsGetListenerProperty pour tous les types de canaux.

Le membre de valeur associé de la structure WS_LISTENER_PROPERTY est une valeur WS_CHANNEL_TYPE .

Cette propriété
spécifie le modèle d’échange de messages du canal utilisé.
WS_LISTENER_PROPERTY_CHANNEL_BINDING
Valeur : 5
Utilisé avec WsGetListenerProperty pour tous les types de canaux.

Le membre de valeur associé de la structure WS_LISTENER_PROPERTY est une valeur WS_CHANNEL_BINDING .

Cette propriété
spécifie la liaison du canal utilisé.
WS_LISTENER_PROPERTY_CONNECT_TIMEOUT
Valeur : 6
Utilisé avec WsCreateListener ou WsGetListenerProperty pour WS_TCP_CHANNEL_BINDING et WS_NAMEDPIPE_CHANNEL_BINDING.

Le membre de valeur associé de la structure WS_LISTENER_PROPERTY est un ULONG.

Une opération d’acceptation attendra
pendant une durée infinie pour accepter le socket TCP sous-jacent ou le canal nommé. Cette
timeout correspond au temps consacré à l’établissement de la liaison net.tcp ou net.pipe
qui a lieu entre le client et le service une fois que le client se connecte.
La valeur du délai d’expiration est en millisecondes, où la valeur INFINITE indique
pas de délai d’attente. Utilisez le
WS_CHANNEL_PROPERTY_CONNECT_TIMEOUT pour définir la valeur correspondante
valeur côté client.


La valeur par défaut est 15000 (15 secondes).
WS_LISTENER_PROPERTY_IS_MULTICAST
Valeur : 7
Utilisé avec WsCreateListener ou WsGetListenerProperty pour WS_UDP_CHANNEL_BINDING avec WS_CHANNEL_TYPE_DUPLEX pour indiquer que l’écouteur écoute sur une adresse de multidiffusion.


Le membre de valeur associé de la structure WS_LISTENER_PROPERTY est un BOOL.

Notez que la définition de cette propriété n’est pas suffisante lors de l’écoute sur
une adresse de multidiffusion. L’ensemble d’interfaces doit également être spécifié
à l’aide de la propriété WS_LISTENER_PROPERTY_MULTICAST_INTERFACES .


Le canal ne valide pas que l’adresse est en fait un
une adresse de multidiffusion, mais elle définit la réutilisation du socket
de sorte qu’un autre processus peut également ouvrir le même port.


La valeur par défaut est FALSE.
WS_LISTENER_PROPERTY_MULTICAST_INTERFACES
Valeur : 8
Utilisé avec WsCreateListener ou WsSetListenerProperty pour WS_UDP_CHANNEL_BINDING avec WS_CHANNEL_TYPE_DUPLEX.


Le membre de valeur associé de la structure WS_LISTENER_PROPERTY est un tableau de valeurs ULONG .

Taille de la propriété
est sizeof(ULONG) multiplié par le nombre de valeurs. Chaque valeur représente
index d’interface d’un adaptateur. Les index des adaptateurs peuvent être
obtenue à l’aide de la fonction GetAdaptersAddresses.


Cette valeur du WS_LISTENER_PROPERTY_IS_MULTICAST
la propriété doit avoir la valeur TRUE pour pouvoir utiliser cette propriété.


La valeur par défaut est une liste vide (aucune interface).
WS_LISTENER_PROPERTY_MULTICAST_LOOPBACK
Valeur : 9
Utilisé avec WsCreateListener pour WS_UDP_CHANNEL_BINDING
avec WS_CHANNEL_TYPE_DUPLEX.


Le membre de valeur associé de la structure WS_LISTENER_PROPERTY est un BOOL.

Cela indique si des messages ou non
envoyés sur l’interface de bouclage sont reçus par ce canal. Si true,
puis les messages sont reçus (sinon, ils ne seront pas vus par le canal).


Cette valeur du WS_LISTENER_PROPERTY_IS_MULTICAST
la propriété doit avoir la valeur TRUE pour pouvoir utiliser cette propriété.


La valeur par défaut est TRUE.
WS_LISTENER_PROPERTY_CLOSE_TIMEOUT
Valeur : 10
Utilisé avec WsCreateListener ou WsGetListenerProperty pour WS_HTTP_CHANNEL_BINDING avec WS_CHANNEL_TYPE_REPLY.


Le membre de valeur associé de la structure WS_LISTENER_PROPERTY est un ULONG.

Cela indique le nombre de millisecondes à
attendez que les clients reçoivent les données des réponses lorsque WsCloseListener est appelé.


L’objectif de ce délai d’expiration est de permettre aux clients de continuer à recevoir
données des réponses HTTP envoyées par le serveur avant la déconnexion du serveur HTTP
les connexions clientes.


Le calcul de la valeur de délai d’expiration utilisée est le suivant :



  • Au moment où WsCloseListener est appelé, déterminez le
    heure à laquelle la dernière réponse a été envoyée (heure de la dernière réponse). Aux fins de
    Ce calcul de délai d’expiration, une réponse est enregistrée comme envoyée une fois que WsWriteMessageEnd a été appelé pour la réponse.

  • Calculez la différence entre l’heure actuelle et le dernier temps de réponse.

  • Si la différence est supérieure à la valeur du délai d’expiration, le réel
    le délai d’expiration utilisé est égal à zéro.

  • Si la différence est inférieure ou égale à la valeur de délai d’expiration, le
    délai d’expiration réel utilisé est la valeur du délai d’expiration moins la différence.


La valeur de délai d’expiration par défaut est 5000 (5 secondes).
WS_LISTENER_PROPERTY_TO_HEADER_MATCHING_OPTIONS
Valeur : 11
Utilisé avec WsCreateListener pour WS_TCP_CHANNEL_BINDING,
WS_HTTP_CHANNEL_BINDING, WS_UDP_CHANNEL_BINDING ou WS_NAMEDPIPE_CHANNEL_BINDING.


Le membre de valeur associé de la structure WS_LISTENER_PROPERTY est un ULONG.

La valeur de la propriété contient un ensemble d’indicateurs (voir WS_URL_MATCHING_OPTIONS) qui
spécifiez comment faire correspondre l’URL dans le WS_TO_HEADER de tous les messages reçus.


La valeur par défaut est :



syntax<br><br>WS_MATCH_URL_THIS_HOST |<br>WS_MATCH_URL_EXACT_PATH |<br>WS_MATCH_URL_PORT |<br>WS_MATCH_URL_NO_QUERY<br><br>
WS_LISTENER_PROPERTY_TRANSPORT_URL_MATCHING_OPTIONS
Valeur : 12
Utilisé avec WsCreateListener pour WS_TCP_CHANNEL_BINDING ou
WS_HTTP_CHANNEL_BINDING.


Le membre de valeur associé de la structure WS_LISTENER_PROPERTY est un ULONG.

La valeur de la propriété contient un ensemble d’indicateurs (voir WS_URL_MATCHING_OPTIONS) qui
spécifiez comment faire correspondre l’URL de transport de tous les canaux acceptés. Consultez
WS_CHANNEL_PROPERTY_TRANSPORT_URL pour plus d’informations sur l’URL de transport.


La valeur par défaut est :



syntax<br><br>WS_MATCH_URL_THIS_HOST |<br>WS_MATCH_URL_EXACT_PATH |<br>WS_MATCH_URL_PORT |<br>WS_MATCH_URL_NO_QUERY<br><br>

Cette propriété contrôle uniquement la vérification du message une fois qu’il a été reçu
par le processus, et non par le routage du message vers le processus (qui est déterminé
par l’URL passée à WsOpenListener).
WS_LISTENER_PROPERTY_CUSTOM_LISTENER_CALLBACKS
Valeur : 13
Utilisé avec WsCreateListener pour WS_CUSTOM_CHANNEL_BINDING.


Le membre de valeur associé de la structure WS_LISTENER_PROPERTY est une structure WS_CUSTOM_LISTENER_CALLBACKS .

Cette propriété est utilisée pour spécifier les rappels qui
définir l’implémentation d’un écouteur personnalisé.


Cette propriété doit être spécifiée lorsque WS_CUSTOM_CHANNEL_BINDING est utilisé.
WS_LISTENER_PROPERTY_CUSTOM_LISTENER_PARAMETERS
Valeur : 14
Utilisé avec WsCreateListener pour WS_CUSTOM_CHANNEL_BINDING.


Le membre de valeur associé de la structure WS_LISTENER_PROPERTY est un pointeur vers un type de données de taille arbitraire.
La taille de la propriété correspond à la taille du type de données.


Cette propriété est utilisée pour spécifier les paramètres utilisés pour créer le personnalisé
implémentation de l’écouteur.


La valeur de cette propriété sera passée à la
WS_CREATE_LISTENER_CALLBACK.


Si cette propriété n’est pas spécifiée, sa valeur est NULL et sa taille est égale à zéro.
WS_LISTENER_PROPERTY_CUSTOM_LISTENER_INSTANCE
Valeur : 15
Utilisé avec WsGetChannelProperty pour WS_CUSTOM_CHANNEL_BINDING.


Le membre de valeur associé de la structure WS_LISTENER_PROPERTY est un void* et la taille de la propriété est sizeof(void*).

La valeur
correspond à la valeur listenerInstance retournée par le
WS_CREATE_LISTENER_CALLBACK.


Cette propriété peut être utilisée pour obtenir l’écouteur sous-jacent
instance pour un écouteur personnalisé. Cela permet à un appelant de directement
interagir avec le instance pour les cas où l’existant
l’ensemble des propriétés de l’écouteur ou des fonctions d’écouteur est insuffisant.
WS_LISTENER_PROPERTY_DISALLOWED_USER_AGENT
Valeur : 16
Utilisé avec WsCreateListener pour WS_HTTP_CHANNEL_BINDING.


Le membre de valeur associé de la structure WS_LISTENER_PROPERTY est un pointeur vers WS_DISALLOWED_USER_AGENT_SUBSTRINGS qui spécifie la liste des utilisateurs non autorisés
sous-chaînes d’agents.

  • À la réception de la requête HTTP, la valeur d’en-tête UserAgent est extraite.

  • Chaque sous-chaîne de la liste fait l’objet d’une recherche dans la valeur de chaîne UserAgent extraite.

  • Si la sous-chaîne est trouvée, la demande est rejetée.




La liste contient par défaut l’entrée suivante

  • Navigateur(s) web : Mozilla




Cette propriété ne s’applique pas aux écouteurs configurés avec WS_ENCODING_RAW encodage.

Configuration requise

   
Client minimal pris en charge Windows 7 [applications de bureau | Applications UWP]
Serveur minimal pris en charge Windows Server 2008 R2 [applications de bureau | Applications UWP]
En-tête webservices.h