énumération WS_CHANNEL_PROPERTY_ID (webservices.h)

Chaque propriété de canal 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 du canal, sa valeur par défaut est utilisée.

Syntax

typedef enum {
  WS_CHANNEL_PROPERTY_MAX_BUFFERED_MESSAGE_SIZE = 0,
  WS_CHANNEL_PROPERTY_MAX_STREAMED_MESSAGE_SIZE = 1,
  WS_CHANNEL_PROPERTY_MAX_STREAMED_START_SIZE = 2,
  WS_CHANNEL_PROPERTY_MAX_STREAMED_FLUSH_SIZE = 3,
  WS_CHANNEL_PROPERTY_ENCODING = 4,
  WS_CHANNEL_PROPERTY_ENVELOPE_VERSION = 5,
  WS_CHANNEL_PROPERTY_ADDRESSING_VERSION = 6,
  WS_CHANNEL_PROPERTY_MAX_SESSION_DICTIONARY_SIZE = 7,
  WS_CHANNEL_PROPERTY_STATE = 8,
  WS_CHANNEL_PROPERTY_ASYNC_CALLBACK_MODEL = 9,
  WS_CHANNEL_PROPERTY_IP_VERSION = 10,
  WS_CHANNEL_PROPERTY_RESOLVE_TIMEOUT = 11,
  WS_CHANNEL_PROPERTY_CONNECT_TIMEOUT = 12,
  WS_CHANNEL_PROPERTY_SEND_TIMEOUT = 13,
  WS_CHANNEL_PROPERTY_RECEIVE_RESPONSE_TIMEOUT = 14,
  WS_CHANNEL_PROPERTY_RECEIVE_TIMEOUT = 15,
  WS_CHANNEL_PROPERTY_CLOSE_TIMEOUT = 16,
  WS_CHANNEL_PROPERTY_ENABLE_TIMEOUTS = 17,
  WS_CHANNEL_PROPERTY_TRANSFER_MODE = 18,
  WS_CHANNEL_PROPERTY_MULTICAST_INTERFACE = 19,
  WS_CHANNEL_PROPERTY_MULTICAST_HOPS = 20,
  WS_CHANNEL_PROPERTY_REMOTE_ADDRESS = 21,
  WS_CHANNEL_PROPERTY_REMOTE_IP_ADDRESS = 22,
  WS_CHANNEL_PROPERTY_HTTP_CONNECTION_ID = 23,
  WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_CALLBACKS = 24,
  WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_PARAMETERS = 25,
  WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_INSTANCE = 26,
  WS_CHANNEL_PROPERTY_TRANSPORT_URL = 27,
  WS_CHANNEL_PROPERTY_NO_DELAY = 28,
  WS_CHANNEL_PROPERTY_SEND_KEEP_ALIVES = 29,
  WS_CHANNEL_PROPERTY_KEEP_ALIVE_TIME = 30,
  WS_CHANNEL_PROPERTY_KEEP_ALIVE_INTERVAL = 31,
  WS_CHANNEL_PROPERTY_MAX_HTTP_SERVER_CONNECTIONS = 32,
  WS_CHANNEL_PROPERTY_IS_SESSION_SHUT_DOWN = 33,
  WS_CHANNEL_PROPERTY_CHANNEL_TYPE = 34,
  WS_CHANNEL_PROPERTY_TRIM_BUFFERED_MESSAGE_SIZE = 35,
  WS_CHANNEL_PROPERTY_ENCODER = 36,
  WS_CHANNEL_PROPERTY_DECODER = 37,
  WS_CHANNEL_PROPERTY_PROTECTION_LEVEL = 38,
  WS_CHANNEL_PROPERTY_COOKIE_MODE = 39,
  WS_CHANNEL_PROPERTY_HTTP_PROXY_SETTING_MODE = 40,
  WS_CHANNEL_PROPERTY_CUSTOM_HTTP_PROXY = 41,
  WS_CHANNEL_PROPERTY_HTTP_MESSAGE_MAPPING = 42,
  WS_CHANNEL_PROPERTY_ENABLE_HTTP_REDIRECT = 43,
  WS_CHANNEL_PROPERTY_HTTP_REDIRECT_CALLBACK_CONTEXT = 44,
  WS_CHANNEL_PROPERTY_FAULTS_AS_ERRORS = 45,
  WS_CHANNEL_PROPERTY_ALLOW_UNSECURED_FAULTS = 46,
  WS_CHANNEL_PROPERTY_HTTP_SERVER_SPN = 47,
  WS_CHANNEL_PROPERTY_HTTP_PROXY_SPN = 48,
  WS_CHANNEL_PROPERTY_MAX_HTTP_REQUEST_HEADERS_BUFFER_SIZE = 49
} WS_CHANNEL_PROPERTY_ID;

Constantes

 
WS_CHANNEL_PROPERTY_MAX_BUFFERED_MESSAGE_SIZE
Valeur : 0
ULONG
utilisé avec WsCreateChannel, WsCreateChannelForListener ou
WsGetChannelProperty pour WS_TCP_CHANNEL_BINDING,
WS_HTTP_CHANNEL_BINDING ou WS_NAMEDPIPE_CHANNEL_BINDING. Cette valeur est une limite quant à la taille d’un
le message peut être reçu ou envoyé par le canal. La limite spécifie la taille maximale
de l’enveloppe, en octets, telle qu’elle apparaît dans sa forme filaire encodée.
La valeur minimale autorisée est 1.


Cette propriété limite la quantité de mémoire
que le canal allouera pour recevoir ou envoyer un message mis en mémoire tampon.
Lors de la réception avec une entrée mise en mémoire tampon, le message entier est lu dans un
tampon avant que l’application n’y ait accès. Lors de l’envoi avec une sortie mise en mémoire tampon,
le message entier est accumulé dans une mémoire tampon avant d’être envoyé.


Cette propriété ne peut être spécifiée que lorsque l’entrée ou la sortie mises en mémoire tampon a été
spécifié ( WS_STREAMED_INPUT_TRANSFER_MODE ou
WS_STREAMED_OUTPUT_TRANSFER_MODE n’ont pas été définis).


La valeur par défaut est 65536.


Le WS_UDP_CHANNEL_BINDING utilise toujours la valeur 65536.
WS_CHANNEL_PROPERTY_MAX_STREAMED_MESSAGE_SIZE
Valeur : 1
Un __int64 non signé utilisé avec WsCreateChannel, WsCreateChannelForListener ou
WsGetChannelProperty
WS_HTTP_CHANNEL_BINDING. Cette
value est une limite quant à la taille d’un message diffusé en continu pouvant être reçu ou envoyé
pour le canal.
La limite spécifie la taille maximale de l’enveloppe, en octets, telle qu’elle apparaît.
sous sa forme filaire encodée. La valeur minimale autorisée est 1.


Cette propriété ne peut être spécifiée que lorsque l’entrée ou la sortie diffusée a été sélectionnée
(WS_STREAMED_INPUT_TRANSFER_MODE ou WS_STREAMED_OUTPUT_TRANSFER_MODE a été défini).


La valeur par défaut est 4194304.
WS_CHANNEL_PROPERTY_MAX_STREAMED_START_SIZE
Valeur : 2
ULONG utilisé avec WsCreateChannel, WsCreateChannelForListener ou
WsGetChannelProperty pour WS_HTTP_CHANNEL_BINDING.
Cette valeur est une limite quant à la taille du début d’un message.
Le début d’un message se compose de la balise d’enveloppe, des en-têtes et de la balise body.
La limite spécifie la taille maximale des données en octets telles qu’elles apparaissent dans
sa forme de fil codée. La valeur minimale autorisée est 1.


Cette propriété ne peut être spécifiée que lorsque l’entrée diffusée en continu a été sélectionnée
(WS_STREAMED_INPUT_TRANSFER_MODE).


Cette propriété limite la quantité de mémoire allouée par le canal
pour lire le début du message. Pour l’entrée de diffusion en continu, le
le début entier du message sera lu dans une mémoire tampon avant l’application
est averti que le début du message a été lu.


La valeur par défaut est 16384.
WS_CHANNEL_PROPERTY_MAX_STREAMED_FLUSH_SIZE
Valeur : 3
ULONG utilisé avec WsCreateChannel, WsCreateChannelForListener ou
WsGetChannelProperty pour WS_HTTP_CHANNEL_BINDING.
Cette valeur est une limite quant au nombre d’octets cumulés
avant l’appel de WsFlushBody .


Cette propriété ne peut être spécifiée que lorsque la sortie diffusée a été sélectionnée
(WS_STREAMED_OUTPUT_TRANSFER_MODE).


Cette propriété limite la quantité de mémoire allouée par le canal
afin d’accumuler des données mises en mémoire tampon. Pour la sortie de streaming, le
Le canal accumule les données dans une mémoire tampon jusqu’à ce que WsFlushBody soit appelé.


La valeur par défaut est 65536.
WS_CHANNEL_PROPERTY_ENCODING
Valeur : 4
Valeur WS_ENCODING
utilisé avec WsCreateChannel, WsCreateChannelForListener ou WsGetChannelProperty pour WS_TCP_CHANNEL_BINDING ou WS_HTTP_CHANNEL_BINDING.
Cette valeur spécifie l’encodage à utiliser pour le canal.


La valeur par défaut dépend de la liaison :



Le WS_UDP_CHANNEL_BINDING utilise toujours la valeur WS_ENCODING_XML_UTF8.
WS_CHANNEL_PROPERTY_ENVELOPE_VERSION
Valeur : 5
Valeur WS_ENVELOPE_VERSION
utilisé avec WsCreateChannel, WsCreateChannelForListener ou WsGetChannelProperty.
Cette valeur spécifie la version d’enveloppe à utiliser pour le canal. The
la version d’enveloppe du canal doit correspondre à celle du message utilisé avec
canal.


Cette propriété n’est pas prise en charge avec le WS_NAMEDPIPE_CHANNEL_BINDING. Les canaux canal nommés utilisent toujours WS_ENVELOPE_VERSION_SOAP_1_2.

La valeur par défaut dépend de la liaison :
WS_CHANNEL_PROPERTY_ADDRESSING_VERSION
Valeur : 6
Valeur WS_ADDRESSING_VERSION
utilisé avec WsCreateChannel, WsCreateChannelForListener ou WsGetChannelProperty.
Cette valeur spécifie la version d’adressage à utiliser pour le canal. The
la version d’adressage du canal doit correspondre à celle du message utilisé avec
canal.


La valeur par défaut dépend de la liaison :



Le WS_ADDRESSING_VERSION_TRANSPORT est pris en charge uniquement pour
WS_HTTP_CHANNEL_BINDING.
WS_CHANNEL_PROPERTY_MAX_SESSION_DICTIONARY_SIZE
Valeur : 7
ULONG utilisé avec WsCreateChannel, WsCreateChannelForListener ou WsGetChannelProperty.
Cette propriété n’est valide que pour WS_TCP_CHANNEL_BINDING ou WS_NAMEDPIPE_CHANNEL_BINDING.
Cette valeur spécifie le quota pour le nombre d’octets du dictionnaire de session
chaînes qui seront transmises ou reçues lors de l’utilisation d’un encodage basé sur la session.


Le seul encodage basé sur la session actuellement pris en charge est
WS_ENCODING_XML_BINARY_SESSION_1, qui est l’encodage par défaut
pour le WS_TCP_CHANNEL_BINDING.


Si le quota est atteint du côté récepteur, le canal
sera défectueux.


Si le quota est atteint du côté de l’envoi, le canal se contentera de
transmettre la chaîne sans utiliser le dictionnaire de session.


Cette valeur est ignorée si elle n’utilise pas un encodage basé sur une session.


La valeur par défaut est 2048.
WS_CHANNEL_PROPERTY_STATE
Valeur : 8
Valeur WS_CHANNEL_STATE
retourné par WsGetChannelProperty.


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_CHANNEL_PROPERTY_ASYNC_CALLBACK_MODEL
Valeur : 9
Valeur WS_CALLBACK_MODEL utilisée avec WsCreateChannel ou WsGetChannelProperty.
Cette valeur indique le modèle de rappel asynchrone préféré lors de l’émission
opérations asynchrones pour le canal.


Si vous utilisez WsCreateChannelForListener , consultez
WS_LISTENER_PROPERTY_ASYNC_CALLBACK_MODEL.


La valeur par défaut est WS_LONG_CALLBACK.


Les WS_SERVICE_HOST et les WS_SERVICE_PROXY prennent uniquement en charge les WS_LONG_CALLBACK
comme valeur acceptable pour cette propriété.
WS_CHANNEL_PROPERTY_IP_VERSION
Valeur : 10
Valeur WS_IP_VERSION
utilisé avec WsCreateChannel ou WsGetChannelProperty pour WS_TCP_CHANNEL_BINDING ou WS_UDP_CHANNEL_BINDING.
Cette propriété spécifie la version IP que le canal doit utiliser pour
communiquer avec le point de terminaison distant.


Pour spécifier la version IP à utiliser pour les canaux acceptés, utilisez le
WS_LISTENER_PROPERTY_IP_VERSION propriété de l’écouteur lorsque
création de l’objet écouteur.


La valeur par défaut est WS_IP_VERSION_AUTO.
WS_CHANNEL_PROPERTY_RESOLVE_TIMEOUT
Valeur : 11
ULONG utilisé avec WsCreateChannel, WsSetChannelProperty,
ou WsSetChannelProperty pour WS_HTTP_CHANNEL_BINDING et WS_CHANNEL_TYPE_REQUEST.
Ce délai d’expiration limite le temps consacré à la résolution
nom DNS. La valeur du délai d’expiration est en millisecondes,
où la valeur INFINITE n’indique aucun délai d’attente.


Cette propriété peut être définie dans n’importe quel état de canal.


La valeur par défaut est INFINITE.
WS_CHANNEL_PROPERTY_CONNECT_TIMEOUT
Valeur : 12
ULONG utilisé avec WsCreateChannel,
WsSetChannelProperty, ou WsGetChannelProperty
pour WS_TCP_CHANNEL_BINDING ou WS_NAMEDPIPE_CHANNEL_BINDING côté client.
Ce délai d’expiration limite le temps consacré à la connexion à l’ordinateur distant et à l’exécution de la négociation net.tcp ou net.pipe. Valeur de délai d’expiration
est en millisecondes, où la valeur INFINITE indique aucun délai d’attente. À définir
ou obtenir le délai d’attente correspondant côté serveur, utilisez
(WS_LISTENER_PROPERTY_CONNECT_TIMEOUT).


Utilisé avec WsCreateChannel,
WsSetChannelProperty ou WsGetChannelProperty pour WS_HTTP_CHANNEL_BINDING et WS_CHANNEL_TYPE_REQUEST.
Ce délai d’expiration limite le temps consacré à la connexion
sur le serveur HTTP. La valeur du délai d’expiration est en millisecondes,
où la valeur INFINITE n’indique aucun délai d’attente.


Cette propriété peut être définie dans n’importe quel état de canal.


La valeur par défaut est 30000 (30 secondes).


Le WS_SERVICE_PROXY définit ce délai d’attente sur INFINITE par défaut.
WS_CHANNEL_PROPERTY_SEND_TIMEOUT
Valeur : 13
ULONG utilisé avec WsCreateChannel, WsCreateChannelForListener,
WsSetChannelProperty, ou WsGetChannelProperty
pour WS_TCP_CHANNEL_BINDING ou WS_NAMEDPIPE_CHANNEL_BINDING. Ce délai d’expiration limite le
temps consacré à l’envoi des octets du message.
La valeur du délai d’expiration est en millisecondes, où la valeur INFINITE indique
pas de délai d’attente.


Utilisé avec WsCreateChannel, WsSetChannelProperty,
ou WsGetChannelProperty pour WS_HTTP_CHANNEL_BINDING
et WS_CHANNEL_TYPE_REQUEST.
Ce délai d’expiration limite le temps consacré à l’envoi du
En-têtes HTTP et octets du message. La valeur du délai d’expiration est en millisecondes, où
la valeur INFINITE n’indique aucun délai d’expiration.


Cette propriété peut être définie dans n’importe quel état de canal.


La valeur par défaut est 30000 (30 secondes).


Les WS_SERVICE_HOST et les WS_SERVICE_PROXY définissent ce paramètre
délai d’attente à INFINITE par défaut.
WS_CHANNEL_PROPERTY_RECEIVE_RESPONSE_TIMEOUT
Valeur : 14
ULONG utilisé avec WsCreateChannel, WsSetChannelProperty,
ou WsSetChannelProperty pour WS_HTTP_CHANNEL_BINDING et WS_CHANNEL_TYPE_REQUEST.
Ce délai d’expiration limite le temps qui sera consacré à l’attente
tous les en-têtes de réponse à recevoir du serveur.
La valeur du délai d’expiration est en millisecondes, où la valeur INFINITE indique aucun délai d’expiration.


Cette propriété peut être définie dans n’importe quel état de canal.


La valeur par défaut est 30000 (30 secondes).


Le WS_SERVICE_PROXY définit ce délai d’expiration sur INFINITE.
WS_CHANNEL_PROPERTY_RECEIVE_TIMEOUT
Valeur : 15
ULONG utilisé avec WsCreateChannel, WsCreateChannelForListener,
WsSetChannelProperty, ou WsGetChannelProperty,
pour WS_TCP_CHANNEL_BINDING ou WS_NAMEDPIPE_CHANNEL_BINDING.
Ce délai d’expiration limite le temps consacré à la réception du
octets du message.
La valeur du délai d’expiration est en millisecondes, où la valeur INFINITE indique
pas de délai d’attente.


Utilisé avec WsCreateChannel, WsSetChannelProperty,
ou WsGetChannelProperty pour WS_HTTP_CHANNEL_BINDING et WS_CHANNEL_TYPE_REQUEST.
Ce délai d’expiration limite le temps consacré à la réception du
octets du message. La valeur du délai d’expiration est en millisecondes,
où la valeur INFINITE n’indique aucun délai d’attente.
Ce délai d’expiration peut être déclenché par WsWriteMessageEnd, WsReadMessageStart et WsReadMessageEnd.

Cette propriété peut être définie dans n’importe quel état de canal.


La valeur par défaut est 30000 (30 secondes).


Les WS_SERVICE_HOST et les WS_SERVICE_PROXY définissent ce paramètre
délai d’attente à INFINITE par défaut.
WS_CHANNEL_PROPERTY_CLOSE_TIMEOUT
Valeur : 16
ULONG utilisé avec WsCreateChannel, WsCreateChannelForListener
WsSetChannelProperty, ou WsGetChannelProperty
pour WS_TCP_CHANNEL_BINDING ou WS_NAMEDPIPE_CHANNEL_BINDING.
Ce délai d’expiration limite le temps consacré à l’exécution du
l’établissement de liaison net.tcp ou net.pipe fermé. La valeur du délai d’expiration est en millisecondes, où
la valeur INFINITE n’indique aucun délai d’expiration.


Cette propriété peut être définie dans n’importe quel état de canal.


La valeur par défaut est 30000 (30 secondes).


Le WS_SERVICE_PROXY définit ce délai d’attente sur INFINITE par défaut.
WS_CHANNEL_PROPERTY_ENABLE_TIMEOUTS
Valeur : 17
BoOL utilisé avec WsCreateChannel pour WS_HTTP_CHANNEL_BINDING, WS_TCP_CHANNEL_BINDING, WS_NAMEDPIPE_CHANNEL_BINDING,
et WS_UDP_CHANNEL_BINDING.
Utilisé avec WsGetChannelProperty pour WS_CUSTOM_CHANNEL_BINDING.


Lorsque cette propriété a la valeur TRUE ou n’est pas fournie lors de l’appel de WsCreateChannel,
propriétés de délai d’expiration de canal plus spécifiques (par exemple , WS_CHANNEL_PROPERTY_SEND_TIMEOUT)
est prioritaire et se comporte comme documenté. Lorsque cette propriété a la valeur FALSE,
toutes les propriétés de délai d’expiration de canal spécifiques sont définies sur INFINITE, sauf si elles sont spécifiées explicitement.


Cette propriété peut être interrogée à partir d’un canal personnalisé à l’aide de WsGetChannelProperty,
pour plus d’informations, consultez WS_GET_CHANNEL_PROPERTY_CALLBACK .


La valeur par défaut est TRUE.


Afin d’implémenter leur propre logique de délai d’expiration, WS_SERVICE_PROXY et
WS_SERVICE_HOST définit cette propriété sur FALSE pour le
les liaisons de canaux standard et nécessitent des canaux personnalisés pour le prendre en charge en interrogeant et
vérifier qu’il est défini sur FALSE.
Des propriétés de délai d’expiration plus spécifiques peuvent toujours être fournies comme décrit ci-dessus.
WS_CHANNEL_PROPERTY_TRANSFER_MODE
Valeur : 18
Valeur WS_TRANSFER_MODE
utilisé avec WsCreateChannel
pour WS_HTTP_CHANNEL_BINDING contrôler si des messages
les messages envoyés et reçus sur le canal sont mis en mémoire tampon ou diffusés en continu. Le client
et le serveur peut utiliser différents modes de transfert et être toujours en mesure de communiquer.


Tous les canaux prennent en charge WsGetChannelProperty pour cela
.


Pour les liaisons de canal autres que WS_HTTP_CHANNEL_BINDINGla valeur est toujours WS_BUFFERED_TRANSFER_MODE.


La valeur de la propriété par défaut est WS_BUFFERED_TRANSFER_MODE. Note
seule WS_BUFFERED_TRANSFER_MODE est utilisée par le modèle de service pour les deux
WS_SERVICE_PROXY et WS_SERVICE_HOST. Seule exception
est autour de l’utilisation de contrats de message sur WS_SERVICE_HOST, où
WS_STREAMED_OUTPUT_TRANSFER_MODE est autorisé.



WS_STREAMED_OUTPUT_TRANSFER_MODE avec WS_CHANNEL_TYPE_REQUEST nécessite Windows Vista et versions ultérieures, et prend en charge uniquement WS_HTTP_HEADER_AUTH_SCHEME_BASIC lorsqu’il est utilisé avec la sécurité.
WS_CHANNEL_PROPERTY_MULTICAST_INTERFACE
Valeur : 19
ULONG utilisé avec WsCreateChannel, WsSetChannelProperty,
ou WsGetChannelProperty pour WS_UDP_CHANNEL_BINDING
avec WS_CHANNEL_TYPE_DUPLEX pour indiquer quel adaptateur
doit être utilisé lors de l’envoi à une adresse de multidiffusion.


La valeur est l’index d’interface de l’adaptateur.


Si cette propriété n’est pas définie ou est 0, l’adaptateur par défaut pour le
la machine est utilisée. Cela peut ne pas convenir aux machines avec plusieurs adaptateurs.


Cette propriété peut être définie dans n’importe quel état de canal.


La valeur de la propriété par défaut est 0.
WS_CHANNEL_PROPERTY_MULTICAST_HOPS
Valeur : 20
ULONG utilisé avec WsCreateChannel ou WsGetChannelProperty
pour WS_UDP_CHANNEL_BINDING avec WS_CHANNEL_TYPE_DUPLEX
pour spécifier le nombre maximal de tronçons qu’un message UDP peut parcourir.


La valeur de la propriété par défaut est 1.
WS_CHANNEL_PROPERTY_REMOTE_ADDRESS
Valeur : 21
Structure WS_ENDPOINT_ADDRESS
utilisé avec WsGetChannelProperty
pour WS_UDP_CHANNEL_BINDING avec WS_CHANNEL_TYPE_DUPLEX
pour récupérer l’adresse de point de terminaison de la partie distante pour le canal.


Champs de l’objet retourné
WS_ENDPOINT_ADDRESS structure sont valides et constantes jusqu’à ce que le canal
est réinitialisé ou libéré. L’appelant ne doit pas modifier les valeurs retournées
les champs de la WS_ENDPOINT_ADDRESS pointez vers.


Cette propriété ne peut pas être récupérée tant que le canal n’a pas atteint l’état ouvert.


Cette propriété est basée sur l’adresse IP source qui est reçue à partir de
le réseau, qui peut être usurpé ou falsifié même si vous utilisez un
canal sécurisé (selon l’environnement réseau).
WS_CHANNEL_PROPERTY_REMOTE_IP_ADDRESS
Valeur : 22
Structure SOCKADDR_STORAGE
utilisé avec WsCreateChannel
pour les types de canaux suivants pour récupérer l’adresse IP
de la partie distante :



Cette propriété ne peut pas être récupérée tant que le canal n’a pas commencé à lire un message.


Cette propriété est basée sur l’adresse IP source qui est reçue à partir de
le réseau, qui peut être usurpé ou falsifié même si vous utilisez un
canal sécurisé (selon l’environnement réseau).
WS_CHANNEL_PROPERTY_HTTP_CONNECTION_ID
Valeur : 23
Pointeur vers un ULONGLONG utilisé avec WsGetChannelProperty
pour WS_HTTP_CHANNEL_BINDING avec WS_CHANNEL_TYPE_REPLY
pour récupérer un identificateur qui identifie de manière unique la connexion cliente.


Cette propriété ne peut pas être récupérée tant que le canal n’a pas commencé à lire un message.


L’ID de connexion identifie de manière unique une connexion alors que
l’objet d’écouteur à partir duquel le canal a été accepté reste ouvert.


Un canal de réponse donné instance n’est en aucun cas corrélé à une connexion.
Chaque fois que le canal est accepté, il peut y avoir un ID de connexion différent
(même si le nombre total de connexions n’a pas changé depuis la dernière acceptation).


L’ID de connexion peut être utilisé par une application pour mettre en corrélation l’état avec
une connexion HTTP.
WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_CALLBACKS
Valeur : 24
Structure WS_CUSTOM_CHANNEL_CALLBACKS utilisée avec WsCreateChannel ou WsCreateChannelForListener pour WS_CUSTOM_CHANNEL_BINDING.


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


Cette propriété doit être spécifiée lorsque WS_CUSTOM_CHANNEL_BINDING est utilisé.
WS_CHANNEL_PROPERTY_CUSTOM_CHANNEL_PARAMETERS
Valeur : 25
Pointeur vers un type de données de taille arbitraire utilisé avec WsCreateChannel ou WsCreateChannelForListener pour WS_CUSTOM_CHANNEL_BINDING.


Cette propriété est utilisée pour spécifier les paramètres utilisés pour créer le personnalisé
implémentation du canal.


La taille de la propriété correspond à la taille du type de données.


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


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


La taille de la propriété est sizeof(void
).
La valeur correspond au canal instance valeur retournée par
WS_CREATE_CHANNEL_CALLBACK.


Cette propriété peut être utilisée pour obtenir le canal sous-jacent
instance pour un canal personnalisé. Cela permet à un appelant de directement
interagir avec le instance pour les cas où l’existant
l’ensemble de propriétés de canal ou de fonctions de canal est insuffisant.
WS_CHANNEL_PROPERTY_TRANSPORT_URL
Valeur : 27
Structure WS_STRING
utilisé avec WsGetChannelProperty
pour WS_HTTP_CHANNEL_BINDING ou WS_TCP_CHANNEL_BINDING pour les canaux créés avec WsCreateChannelForListener.


Cette propriété est utilisée sur le serveur pour obtenir l’URL qui a été transmise
sur WsOpenChannel sur le client.
Cette URL peut être différente de la valeur dans le WS_TO_HEADER
si WsAddressMessage a été utilisé. Mappage du
l’URL de transport vers le transport sous-jacent varie selon le
WS_CHANNEL_BINDING, comme suit :



Cette propriété n’est disponible qu’une fois que le canal a
ont été acceptés à l’aide de WsAcceptChannel.


L’appelant doit transmettre l’adresse d’un WS_STRING lorsque
récupération de cette propriété. La chaîne retournée est une chaîne complète
URL sous forme encodée. La chaîne retournée est bonne jusqu’à ce que le canal
est libéré ou réinitialisé.
WS_CHANNEL_PROPERTY_NO_DELAY
Valeur : 28
BoOL utilisé avec WsCreateChannel, WsCreateChannelForListener ou WsGetChannelProperty ou WsSetChannelProperty pour WS_TCP_CHANNEL_BINDING.


Cette propriété contrôle la valeur d’option de socket TCP_NODELAY du socket sous-jacent.


Lorsque cette valeur est FALSE, l’algorithme Nagle est utilisé, ce qui peut
améliorer le débit en fusionnant de petits messages.


La définition de cette valeur sur TRUE peut réduire la latence au coût du débit
pour les petits messages.


La valeur par défaut est FALSE.
WS_CHANNEL_PROPERTY_SEND_KEEP_ALIVES
Valeur : 29
BoOL utilisé avec WsCreateChannel, WsCreateChannelForListener pour WS_TCP_CHANNEL_BINDING.


Cette propriété contrôle la valeur d’option de socket SO_KEEPALIVE du socket sous-jacent.


La définition de cette valeur sur TRUE entraîne l’envoi de paquets keep-alive
sur le socket sous-jacent, ce qui peut aider à détecter quand
une partie distante n’est plus disponible.


La valeur par défaut est FALSE.
WS_CHANNEL_PROPERTY_KEEP_ALIVE_TIME
Valeur : 30
ULONG utilisé avec WsCreateChannel ou WsCreateChannelForListener pour WS_TCP_CHANNEL_BINDING.


Cette propriété est mesurée en millisecondes.


Cette propriété ne peut être spécifiée que lorsque la propriété WS_CHANNEL_PROPERTY_SEND_KEEP_ALIVES a la valeur TRUE.


La valeur représente la durée d’envoi des paquets de conservation actifs si le
socket n’est pas utilisé.


La valeur par défaut est 2 heures.
WS_CHANNEL_PROPERTY_KEEP_ALIVE_INTERVAL
Valeur : 31
ULONG utilisé avec WsCreateChannel ou WsCreateChannelForListener pour WS_TCP_CHANNEL_BINDING.


Cette propriété est mesurée en millisecondes.


Cette propriété ne peut être spécifiée que lorsque la propriété WS_CHANNEL_PROPERTY_SEND_KEEP_ALIVES a la valeur TRUE.


Une fois le délai spécifié dans WS_CHANNEL_PROPERTY_KEEP_ALIVE_TIME expiré,
le système commencera à envoyer des paquets de conservation actifs dans une tentative de contact
la partie distante. Ce paramètre contrôle la fréquence d’envoi du système
un autre paquet (comme une nouvelle tentative).


La valeur par défaut est de 1 seconde.
WS_CHANNEL_PROPERTY_MAX_HTTP_SERVER_CONNECTIONS
Valeur : 32
ULONG utilisé avec WsCreateChannel pour WS_HTTP_CHANNEL_BINDING.


Cette propriété spécifie le nombre maximal de connexions qu’une application cliente a.
peut avoir sur un serveur HTTP.
Les connexions peuvent être mises en cache et réutilisées par d’autres composants au sein du même processus qui accèdent au même serveur HTTP.


La valeur par défaut est INFINITE (aucune limite).
WS_CHANNEL_PROPERTY_IS_SESSION_SHUT_DOWN
Valeur : 33
BoOL utilisé avec WsGetChannelProperty pour WS_TCP_CHANNEL_BINDING
ou WS_NAMEDPIPE_CHANNEL_BINDING avec WS_CHANNEL_TYPE_DUPLEX_SESSION.


Cette propriété indique
si WsShutdownSessionChannel a été
utilisé pour arrêter le canal.


Le canal doit être dans WS_CHANNEL_STATE_OPEN ou
WS_CHANNEL_STATE_FAULTED état.
WS_CHANNEL_PROPERTY_CHANNEL_TYPE
Valeur : 34
Valeur WS_CHANNEL_TYPE
utilisé avec WsGetChannelProperty pour tous les types de canaux
pour interroger le type du canal.


Le canal peut se trouver dans n’importe quel WS_CHANNEL_STATE.
WS_CHANNEL_PROPERTY_TRIM_BUFFERED_MESSAGE_SIZE
Valeur : 35
ULONG utilisé avec WsCreateChannel, WsCreateChannelForListener ou
WsGetChannelProperty pour WS_TCP_CHANNEL_BINDING,
WS_HTTP_CHANNEL_BINDING ou WS_NAMEDPIPE_CHANNEL_BINDING pour contrôler l’allocation de mémoire
caractéristiques des messages sur le canal.


Cette propriété spécifie la quantité maximale de mémoire que le canal conservera
une fois qu’un message est réinitialisé. Si tous les
les messages qu’un canal voit sont tous plus petits que cette taille, puis les allocations
à des fins de mise en mémoire tampon, les messages seront réduits.


Cette propriété ne peut être spécifiée que lorsque l’entrée ou la sortie mises en mémoire tampon a été
spécifié ( WS_STREAMED_INPUT_TRANSFER_MODE ou
WS_STREAMED_OUTPUT_TRANSFER_MODE n’ont pas été définis).


La valeur par défaut est 65536.


Le WS_UDP_CHANNEL_BINDING utilise toujours la valeur 65536.
WS_CHANNEL_PROPERTY_ENCODER
Valeur : 36
Structure WS_CHANNEL_ENCODER utilisée avec WsCreateChannel ou WsCreateChannelForListener pour WS_TCP_CHANNEL_BINDING,
WS_HTTP_CHANNEL_BINDING ou WS_NAMEDPIPE_CHANNEL_BINDING pour fournir un encodage personnalisé des messages.

Cette propriété ne peut pas être utilisée avec WS_UDP_CHANNEL_BINDING.
WS_CHANNEL_PROPERTY_DECODER
Valeur : 37
Structure WS_CHANNEL_DECODER utilisée avec WsCreateChannel ou WsCreateChannelForListener pour WS_TCP_CHANNEL_BINDING,
WS_HTTP_CHANNEL_BINDING ou WS_NAMEDPIPE_CHANNEL_BINDING pour fournir un décodage personnalisé des messages.

Cette propriété ne peut pas être utilisée avec WS_UDP_CHANNEL_BINDING.
WS_CHANNEL_PROPERTY_PROTECTION_LEVEL
Valeur : 38
Valeur WS_PROTECTION_LEVEL utilisée avec WsGetChannelProperty pour n’importe quel type de canal.


Cette propriété indique
les garanties de sécurité fournies par le canal.


La valeur de cette propriété dépend des exigences de sécurité
demandé pour le canal.
WS_CHANNEL_PROPERTY_COOKIE_MODE
Valeur : 39
Valeur WS_COOKIE_MODE utilisée avec WsCreateChannel avec WS_HTTP_CHANNEL_BINDING pour contrôler la façon dont les cookies HTTP sont gérés.


La valeur par défaut est WS_AUTO_COOKIE_MODE.
WS_CHANNEL_PROPERTY_HTTP_PROXY_SETTING_MODE
Valeur : 40
Valeur WS_HTTP_PROXY_SETTING_MODE utilisée avec WsCreateChannel avec WS_HTTP_CHANNEL_BINDING pour contrôler les paramètres du proxy HTTP pour le canal.


La valeur par défaut est WS_HTTP_PROXY_SETTING_MODE_AUTO.
WS_CHANNEL_PROPERTY_CUSTOM_HTTP_PROXY
Valeur : 41
Structure WS_CUSTOM_HTTP_PROXY utilisée avec WsCreateChannel avec WS_HTTP_CHANNEL_BINDING pour spécifier le paramètre personnalisé pour le canal HTTP. Cette propriété doit
être spécifié lorsque WS_CHANNEL_PROPERTY_HTTP_PROXY_SETTING_MODE est défini sur
WS_HTTP_PROXY_SETTING_MODE_CUSTOM.


La valeur par défaut est NULL.
WS_CHANNEL_PROPERTY_HTTP_MESSAGE_MAPPING
Valeur : 42
Structure WS_HTTP_MESSAGE_MAPPING utilisée avec WsCreateChannel ou WsCreateChannelForListener pour WS_HTTP_CHANNEL_BINDING.


Cette valeur de propriété contrôle la façon dont une requête ou une réponse HTTP est mappée dans
objet message. Pour plus d’informations, consultez WS_HTTP_MESSAGE_MAPPING .


La valeur par défaut de cette propriété est une structure WS_HTTP_MESSAGE_MAPPING est la suivante :



  • requestMappingOptions : 0

  • requestHeaderMappings : none

  • responseMappingOptions : 0

  • responseHeaderMappings : none



WS_HTTP_MESSAGE_MAPPING champs requestMappingOptions et responseMappingOptions doivent être 0
sauf si l’encodage est défini sur WS_ENCODING_RAW à l’aide de la propriété channel WS_CHANNEL_PROPERTY_ENCODING.
WS_CHANNEL_PROPERTY_ENABLE_HTTP_REDIRECT
Valeur : 43
BoOL utilisé avec WsCreateChannel pour WS_HTTP_CHANNEL_BINDING avec WS_CHANNEL_TYPE_REQUEST.


Cette valeur de propriété contrôle si la redirection automatique HTTP est activée.


La définition de cette valeur sur TRUE active la redirection automatique HTTP.


La valeur par défaut est FALSE.
Si la propriété WS_CHANNEL_PROPERTY_HTTP_REDIRECT_CALLBACK_CONTEXT est spécifiée,
cette propriété est ignorée.
WS_CHANNEL_PROPERTY_HTTP_REDIRECT_CALLBACK_CONTEXT
Valeur : 44
Structure WS_HTTP_REDIRECT_CALLBACK_CONTEXT
utilisé avec WsCreateChannel pour WS_HTTP_CHANNEL_BINDING avec WS_CHANNEL_TYPE_REQUEST.


Cette valeur de propriété peut être spécifiée quand un contrôle plus granulaire de la redirection HTTP automatique est nécessaire.


Lorsque cette propriété est définie, la routine de rappel spécifiée est appelée avec l’URL du point de terminaison d’origine
et la nouvelle URL vers laquelle le message doit être transféré. La valeur de retour de rappel est utilisée pour indiquer si
la redirection doit être autorisée.
WS_CHANNEL_PROPERTY_FAULTS_AS_ERRORS
Valeur : 45
BoOL utilisé avec WsCreateChannel, WsSetChannelProperty,
WsGetChannelProperty ou WsCreateServiceProxy pour WS_HTTP_CHANNEL_BINDING et WS_CHANNEL_TYPE_REQUEST, ou WS_TCP_CHANNEL_BINDING, WS_NAMEDPIPE_CHANNEL_BINDING et WS_UDP_CHANNEL_BINDING sur le client.


Lorsqu’elles sont définies sur TRUE, les fonctions Channel et Service Model retournent un code d’erreur lorsqu’une erreur est reçue.
Si l’erreur est reconnue par ce runtime, le code d’erreur correspondant est retourné,
sinon , WS_E_ENDPOINT_FAULT_RECEIVED est retourné. (Voir Valeurs de retour des services web Windows.) Lorsqu’il est défini sur FALSE, WsReceiveMessage
et WsRequestReplyretournent WS_E_ENDPOINT_FAULT_RECEIVED lorsqu’une erreur est reçue.
Les autres fonctions de canal retournent les erreurs en tant que messages réguliers et WS_MESSAGE_PROPERTY_IS_FAULT
peut être utilisé pour distinguer les erreurs des autres messages.


Lorsque cette propriété est définie sur TRUE et utilisée avec WsCreateChannel ou WsSetChannelProperty,
il remplace le comportement suivant de WS_CHANNEL_PROPERTY_ALLOW_UNSECURED_FAULTS : si l’erreur est reconnue par le
runtime, une erreur non sécurisée n’entraîne pas l’échec de la vérification de sécurité du message d’erreur, même si
WS_CHANNEL_PROPERTY_ALLOW_UNSECURED_FAULTS a la valeur FALSE. La status de la vérification de sécurité
peut être déterminé en inspectant WS_MESSAGE_PROPERTY_PROTECTION_LEVEL.
Cela ne s’applique pas à WS_UDP_CHANNEL_BINDING , car elle ne prend pas en charge la sécurité.


Lorsque cette propriété est définie sur FALSE ou utilisée avec WsCreateServiceProxy ou que l’erreur n’est pas reconnue
par le runtime, le comportement décrit dans WS_CHANNEL_PROPERTY_ALLOW_UNSECURED_FAULTS s’applique sans
.


Quelle que soit la valeur de cette propriété, si un code d’erreur est retourné suite à la réception d’une erreur,
WsGetFaultErrorProperty peut être utilisé pour interroger les détails de l’erreur à partir de l’objet d’erreur.


Cette propriété peut être définie dans n’importe quel état de canal.


La valeur par défaut est TRUE. Si elle est utilisée avec WsCreateServiceProxy, cette propriété doit avoir la valeur TRUE.




La définition de cette propriété sur TRUE peut entraîner la désactivation de la vérification de la sécurité des messages pour certaines erreurs.
Les erreurs non vérifiées peuvent ne pas être dignes de confiance.
WS_CHANNEL_PROPERTY_ALLOW_UNSECURED_FAULTS
Valeur : 46
BoOL utilisé avec WsCreateChannel, WsSetChannelProperty,
ou WsGetChannelProperty pour WS_HTTP_CHANNEL_BINDING et WS_CHANNEL_TYPE_REQUEST, ou WS_TCP_CHANNEL_BINDING et WS_NAMEDPIPE_CHANNEL_BINDING sur le client.


Lorsqu’elle est définie sur TRUE, les erreurs non sécurisées reçues sur un canal sécurisé n’entraînent pas l’échec de la vérification de la sécurité des messages. Au lieu de cela, le
l’erreur est traitée comme si la vérification de la sécurité des messages a réussi et gérée comme décrit dans WS_CHANNEL_PROPERTY_FAULTS_AS_ERRORS.
La status de la vérification de sécurité peut être déterminée en inspectant WS_MESSAGE_PROPERTY_PROTECTION_LEVEL.


Lorsque la valeur est FALSE, la vérification de la sécurité des messages d’erreur est gérée comme la vérification de tout autre message.


WS_CHANNEL_PROPERTY_FAULTS_AS_ERRORS pouvez remplacer cette propriété pour les erreurs reconnues par ce runtime.


Cette propriété s’applique uniquement à la vérification de sécurité au niveau du message et n’a aucun impact sur la sécurité du transport.


Cette propriété peut être définie dans n’importe quel état de canal.


La valeur par défaut est FALSE.


La définition de cette propriété sur TRUE entraîne la désactivation de la vérification de la sécurité des messages pour les erreurs. Les erreurs non sécurisées peuvent ne pas être dignes de confiance.
WS_CHANNEL_PROPERTY_HTTP_SERVER_SPN
Valeur : 47
Pointeur WCHAR
utilisé avec WsGetChannelProperty pour WS_HTTP_CHANNEL_BINDING et WS_CHANNEL_TYPE_REQUEST.



Retourne le nom du principal du serveur du point de terminaison distant utilisé pour la dernière demande ayant échoué. Il n’y a aucune garantie que cette propriété est
disponibles. Voici les conditions nécessaires (mais pas toujours suffisantes) pour que cette propriété soit présente :

  • Le canal a envoyé une requête.

  • La demande a échoué en raison de schémas d’authentification d’en-tête HTTP incompatibles. Voir WS_HTTP_HEADER_AUTH_SECURITY_BINDING.

  • Le point de terminaison distant prend en charge le schéma d’authentification « Nego2 ».




Cette propriété est disponible uniquement sur Windows 7 et versions ultérieures.
WS_CHANNEL_PROPERTY_HTTP_PROXY_SPN
Valeur : 48
Pointeur WCHAR utilisé avec WsGetChannelProperty pour WS_HTTP_CHANNEL_BINDING et WS_CHANNEL_TYPE_REQUEST.



Retourne le nom du principal de serveur du serveur proxy HTTP utilisé pour la dernière demande ayant échoué. Il n’y a aucune garantie que cette propriété est
disponibles. Voici les conditions nécessaires (mais pas toujours suffisantes) pour que cette propriété soit présente :

  • Le canal a envoyé une requête.

  • La demande a échoué en raison de schémas d’authentification d’en-tête HTTP incompatibles. Voir WS_HTTP_HEADER_AUTH_SECURITY_BINDING.

  • Le serveur proxy HTTP prend en charge le schéma d’authentification « Nego2 ».




Cette propriété est disponible uniquement sur Windows 7 et versions ultérieures.
WS_CHANNEL_PROPERTY_MAX_HTTP_REQUEST_HEADERS_BUFFER_SIZE
Valeur : 49
ULONG utilisé avec WsCreateChannelForListener ou
WsGetChannelProperty pour WS_HTTP_CHANNEL_BINDING
avec WS_CHANNEL_TYPE_REPLY. Cette valeur est une limite quant à la taille des en-têtes
d’une requête HTTP reçue peut être. La limite spécifie la taille maximale
des en-têtes de requête HTTP en octets.


Cette propriété limite la quantité de mémoire
que le WS_HTTP_CHANNEL_BINDING avec WS_CHANNEL_TYPE_REPLY
alloue pour recevoir les en-têtes de requête HTTP. Lors de la réception, l’intégralité de la requête HTTP
Les en-têtes sont lus dans une mémoire tampon avant le traitement.


La valeur par défaut est 65536.

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