Kanaal (Windows Web Services)
Kanalen bevatten een communicatiecontext tussen twee of meer partijen en worden gebruikt voor het verzenden en ontvangen van berichten.
Gebruik op de client WsCreateChannel om een kanaal te maken. Gebruik op de server WsCreateChannelForListener om een kanaal te maken dat door de client kan worden geaccepteerd met behulp van een listener.
Wanneer u een kanaal maakt, geeft u de volgende informatie op, die zowel het lokale gedrag van het kanaal als het wire-protocol bepaalt dat moet worden gebruikt.
- Een WS_CHANNEL_TYPE, waarmee het berichtuitwisselingspatroon van het kanaal wordt geïdentificeerd.
- Een WS_CHANNEL_BINDING, waarmee het overdrachtsprotocol wordt geïdentificeerd dat moet worden gebruikt.
- Een WS_SECURITY_DESCRIPTION, waarmee de beveiliging wordt opgegeven die wordt gebruikt voor het kanaal. Wanneer u kanalen maakt voor gebruik op een server, wordt dit eenmaal opgegeven voor alle kanalen die worden geaccepteerd voor een bepaalde listener.
- Een set WS_CHANNEL_PROPERTYs, waarmee aanvullende optionele instellingen worden opgegeven (zie de WS_CHANNEL_PROPERTY_ID opsommingen voor een lijst met deze instellingen).
Voordat u het kanaal gebruikt, moet u het openen door de functie WsOpenChannel aan te roepen en het kanaal en eindpuntadres op te geven, samen met andere, optionele informatie.
Zie het onderwerp Channel States voor informatie over de statusovergangen voor een kanaal.
Zie het onderwerp Channel Layer Overview voor meer informatie over kanalen.
De volgende API-elementen worden gebruikt met kanalen.
Callback | Beschrijving |
---|---|
WS_ABANDON_MESSAGE_CALLBACK | Verwerkt de WsAbandonMessage aanroep voor een kanaal met aangepaste kanaalbinding. |
WS_ABORT_CHANNEL_CALLBACK | Verwerkt de WsAbortChannel aanroep voor een kanaal met aangepaste kanaalbinding. |
WS_CLOSE_CHANNEL_CALLBACK | Verwerkt de WsCloseChannel aanroep voor een kanaal met aangepaste kanaalbinding. |
WS_CREATE_CHANNEL_CALLBACK | Verwerkt de WsCloseChannel aanroep voor een kanaal met aangepaste kanaalbinding. |
WS_CREATE_DECODER_CALLBACK | Hiermee wordt het maken van een decoderexemplaren afgehandeld. |
WS_CREATE_ENCODER_CALLBACK | Hiermee wordt het maken van een encoder-exemplaar afgehandeld. |
WS_DECODER_DECODE_CALLBACK | Ontsleutelt een bericht. |
WS_DECODER_END_CALLBACK | Het einde van een bericht decoderen. |
WS_DECODER_GET_CONTENT_TYPE_CALLBACK | Hiermee haalt u het inhoudstype van het bericht op. |
WS_DECODER_START_CALLBACK | Begint met het decoderen van een bericht. |
WS_ENCODER_ENCODE_CALLBACK | Codeert een bericht. |
WS_ENCODER_END_CALLBACK | Codeert het einde van een bericht. |
WS_ENCODER_GET_CONTENT_TYPE_CALLBACK | Hiermee haalt u het inhoudstype van het bericht op. |
WS_ENCODER_START_CALLBACK | Hiermee begint u een bericht te coderen. |
WS_FREE_CHANNEL_CALLBACK | Verwerkt de WsFreeChannel aanroep voor een kanaal met aangepaste kanaalbinding. |
WS_FREE_DECODER_CALLBACK | Hiermee wordt een decoderexemplaren vrijgemaakt. |
WS_FREE_ENCODER_CALLBACK | Hiermee wordt een encoderexemplaren vrijgemaakt. |
WS_GET_CHANNEL_PROPERTY_CALLBACK | Verwerkt de WsGetChannelProperty aanroep voor een kanaal met aangepaste kanaalbinding. |
WS_HTTP_REDIRECT_CALLBACK | Aangeroepen wanneer een bericht automatisch wordt omgeleid naar een andere service die gebruikmaakt van de functionaliteit voor automatisch omleiden van HTTP, zoals beschreven in RFC2616. |
WS_OPEN_CHANNEL_CALLBACK | Verwerkt de WsOpenChannel aanroep voor een kanaal met aangepaste kanaalbinding. |
WS_READ_MESSAGE_END_CALLBACK | Verwerkt de WsReadMessageEnd aanroep voor een kanaal met aangepaste kanaalbinding. |
WS_READ_MESSAGE_START_CALLBACK | Verwerkt de WsReadMessageEnd aanroep voor een kanaal met aangepaste kanaalbinding. |
WS_RESET_CHANNEL_CALLBACK | Verwerkt de WsResetChannel aanroep voor een kanaal met aangepaste kanaalbinding. |
WS_SET_CHANNEL_PROPERTY_CALLBACK | Verwerkt de WsSetChannelProperty aanroep voor een kanaal met aangepaste kanaalbinding. |
WS_SHUTDOWN_SESSION_CHANNEL_CALLBACK | Verwerkt de WsShutdownSessionChannel aanroep voor een kanaal met aangepaste kanaalbinding. |
WS_WRITE_MESSAGE_END_CALLBACK | Verwerkt de WsWriteMessageEnd aanroep voor een kanaal met aangepaste kanaalbinding. |
WS_WRITE_MESSAGE_START_CALLBACK | Verwerkt de WsWriteMessageStart aanroep voor een kanaal met aangepaste kanaalbinding. |
Opsomming | Beschrijving |
---|---|
WS_CHANNEL_BINDING | Geeft de protocolstack aan die moet worden gebruikt voor het kanaal. |
WS_CHANNEL_PROPERTY_ID | Identificeert elke kanaaleigenschap op basis van een id. |
WS_CHANNEL_STATE | De status van het kanaal. |
WS_CHANNEL_TYPE | Geeft de basiskenmerken van het kanaal aan, zoals of het sessievol is en welke richtingen van communicatie worden ondersteund. |
WS_ENCODING | De verschillende coderingen (berichtindelingen). |
WS_RECEIVE_OPTION | Hiermee geeft u op of een bericht vereist is bij ontvangst van een kanaal. |
WS_TRANSFER_MODE | Hiermee geeft u op of berichten die worden verzonden of ontvangen, worden gestreamd of gebufferd. |
Functie | Beschrijving |
---|---|
WsAbandonMessage | Slaat de rest van een bericht voor een kanaal over. |
WsAbortChannel- | Hiermee wordt alle in behandeling zijnde I/O op een opgegeven kanaal afgebroken en wordt de kanaalstatus ingesteld op WS_CHANNEL_STATE_FAULTED. |
WsCloseChannel- | Hiermee sluit u een kanaal wanneer het niet meer nodig is. |
WsCreateChannel- | Hiermee maakt u een kanaal. |
WsCreateChannelForListener- | Hiermee maakt u een kanaal voor een listener. |
WsFreeChannel- | Hiermee worden de geheugenresources vrijgegeven die zijn gekoppeld aan een kanaal. |
WsGetChannelProperty- | Hiermee wordt een eigenschap opgehaald van het kanaal waarnaar wordt verwezen door de kanaalparameter. |
WsOpenChannel- | Hiermee opent u een kanaal naar een eindpunt. |
WsReadMessageEnd- | Leest de afsluitende elementen van een bericht van een kanaal. |
WsReadMessageStart | Leest de kopteksten van het volgende bericht van het kanaal en bereidt zich voor om de hoofdtekstelementen te lezen. |
WsReceiveMessage- | Hiermee ontvangt u een bericht en wordt de hoofdtekst van het bericht gedeserialiseerd als een waarde. |
WsRequestReply | Hiermee verzendt u een aanvraagbericht en ontvangt u een gecorreleerd antwoordbericht. |
WsResetChannel- | Stel een kanaal opnieuw in, zodat het opnieuw kan worden gebruikt. |
WsSendMessage- | Hiermee wordt een bericht verzonden op een kanaal met behulp van serialisatie om het hoofdtekstelement te schrijven. |
WsSendReplyMessage | Hiermee wordt een bericht verzonden dat een antwoord is op een ontvangen bericht. |
WsSetChannelProperty- | Hiermee stelt u een eigenschap van een kanaal in. |
WsSetMessageProperty- | Hiermee stelt u een eigenschap van een bericht in. |
WsWriteMessageEnd- | Hiermee schrijft u de afsluitende elementen van een bericht naar het kanaal. |
WsWriteMessageStart | Schrijf de kopteksten van een bericht naar het kanaal en bereidt zich voor om de hoofdtekstelementen te schrijven. |
Handvat | Beschrijving |
---|---|
WS_CHANNEL | Een ondoorzichtig type dat wordt gebruikt om naar een kanaal te verwijzen. |
Structuur | Beschrijving |
---|---|
WS_CHANNEL_DECODER | Een set callbacks waarmee het inhoudstype en gecodeerde bytes van een ontvangen bericht worden getransformeerd. |
WS_CHANNEL_ENCODER | Een set callbacks waarmee het inhoudstype en gecodeerde bytes van een verzonden bericht kunnen worden getransformeerd. |
WS_CHANNEL_PROPERTIES | Een set WS_CHANNEL_PROPERTY structuren. |
WS_CHANNEL_PROPERTY | Een kanaalspecifieke instelling. |
WS_CUSTOM_CHANNEL_CALLBACKS | Een set callbacks die de implementatie van een aangepast kanaal vormen. |
WS_CUSTOM_HTTP_PROXY | wordt gebruikt om de aangepaste proxy voor het kanaal op te geven met behulp van de WS_CHANNEL_PROPERTY_CUSTOM_HTTP_PROXY waarde van de opsomming WS_CHANNEL_PROPERTY_ID. |
WS_HTTP_HEADER_MAPPING | Vertegenwoordigt een afzonderlijke koptekst die is toegewezen als onderdeel van WS_HTTP_MESSAGE_MAPPING. |
WS_HTTP_MESSAGE_MAPPING | Informatie over hoe een HTTP-aanvraag of -antwoord moet worden weergegeven in een berichtobject. |
WS_HTTP_REDIRECT_CALLBACK_CONTEXT | Hiermee geeft u de callback-functie en -status voor het beheren van het gedrag van automatische HTTP-omleiding. |
WS_MESSAGE_DESCRIPTION | Het schema voor de invoer- en uitvoer-WS_MESSAGE voor een bepaalde beschrijving van de bewerking. |