Kanal (Windows Web Hizmetleri)
Kanallar, iki veya daha fazla taraf arasında bir iletişim bağlamı kapsüller ve ileti göndermek ve almak için kullanılır.
İstemcide, kanal oluşturmak için WsCreateChannel kullanın. sunucusunda, dinleyicikullanılarak istemci tarafından kabul edilebilen bir kanal oluşturmak için WsCreateChannelForListenerkullanın.
Bir kanal oluşturduğunuzda, kanalın hem yerel davranışını hem de kullanılacak kablo protokollerini belirleyen aşağıdaki bilgileri belirtirsiniz.
- kanalın ileti değişimi düzenini tanımlayan bir WS_CHANNEL_TYPE.
- Kullanılacak aktarım protokollerini tanımlayan WS_CHANNEL_BINDING.
- Kanal için kullanılan güvenliği belirten bir WS_SECURITY_DESCRIPTION. Bir sunucuda kullanılmak üzere kanallar oluştururken, bu, belirli bir dinleyici için kabul edilecek tüm kanallar için bir kez belirtilir.
- ek isteğe bağlı ayarlar belirten bir WS_CHANNEL_PROPERTYkümesi (bu ayarların listesi için WS_CHANNEL_PROPERTY_ID numaralandırmalarına bakın).
Kanalı kullanmadan önce, WsOpenChannel işlevini çağırarak ve kanalı ve uç nokta adresinidiğer isteğe bağlı bilgilerle birlikte belirterek açmanız gerekir.
Bir kanalın durum geçişleri hakkında bilgi için Kanal Durumları konusuna bakın.
Kanallar hakkında daha fazla bilgi için Kanal Katmanına Genel Bakış konusuna bakın.
Aşağıdaki API öğeleri kanallarla birlikte kullanılır.
Geri çağırma | Açıklama |
---|---|
WS_ABANDON_MESSAGE_CALLBACK | Özel kanal bağlamalı bir kanal için WsAbandonMessageçağrısınıişler. |
WS_ABORT_CHANNEL_CALLBACK | Özel kanal bağlamalı bir kanal için WsAbortChannel çağrısını işler. |
WS_CLOSE_CHANNEL_CALLBACK | Özel kanal bağlamalı bir kanal için WsCloseChannel çağrısını işler. |
WS_CREATE_CHANNEL_CALLBACK | Özel kanal bağlamalı bir kanal için WsCloseChannel çağrısını işler. |
WS_CREATE_DECODER_CALLBACK | Kod çözücü örneği oluşturmayı işler. |
WS_CREATE_ENCODER_CALLBACK | Kodlayıcı örneği oluşturmayı işler. |
WS_DECODER_DECODE_CALLBACK | İletinin kodunu çözer. |
WS_DECODER_END_CALLBACK | İletinin sonunun kodunu çözer. |
WS_DECODER_GET_CONTENT_TYPE_CALLBACK | İletinin içerik türünü alır. |
WS_DECODER_START_CALLBACK | İletinin kodunu çözmeyi başlatır. |
WS_ENCODER_ENCODE_CALLBACK | İletiyi kodlar. |
WS_ENCODER_END_CALLBACK | İletinin sonunu kodlar. |
WS_ENCODER_GET_CONTENT_TYPE_CALLBACK | İletinin içerik türünü alır. |
WS_ENCODER_START_CALLBACK | İleti kodlamayı başlatır. |
WS_FREE_CHANNEL_CALLBACK | Özel kanal bağlamalı bir kanal için WsFreeChannelçağrısınıişler. |
WS_FREE_DECODER_CALLBACK | Kod çözücü örneğini boşaltmayı işler. |
WS_FREE_ENCODER_CALLBACK | Bir kodlayıcı örneğini boşaltmayı işler. |
WS_GET_CHANNEL_PROPERTY_CALLBACK | Özel kanal bağlamalı bir kanal için WsGetChannelProperty çağrısını işler. |
WS_HTTP_REDIRECT_CALLBACK | bir ileti, RFC2616'de açıklandığı gibi HTTP otomatik yeniden yönlendirme işlevini kullanan başka bir hizmete otomatik olarak yeniden yönlendirilecekken çağrılır. |
WS_OPEN_CHANNEL_CALLBACK | Özel kanal bağlamalı bir kanal için WsOpenChannel çağrısını işler. |
WS_READ_MESSAGE_END_CALLBACK | Özel kanal bağlaması olan bir kanal için WsReadMessageEnd çağrısını işler. |
WS_READ_MESSAGE_START_CALLBACK | Özel kanal bağlaması olan bir kanal için WsReadMessageEnd çağrısını işler. |
WS_RESET_CHANNEL_CALLBACK | Özel kanal bağlaması olan bir kanal için WsResetChannel çağrısını işler. |
WS_SET_CHANNEL_PROPERTY_CALLBACK | Özel kanal bağlamalı bir kanal için WsSetChannelProperty çağrısını işler. |
WS_SHUTDOWN_SESSION_CHANNEL_CALLBACK | Özel kanal bağlaması olan bir kanal için WsShutdownSessionChannel çağrısını işler. |
WS_WRITE_MESSAGE_END_CALLBACK | Özel kanal bağlaması olan bir kanal için WsWriteMessageEnd çağrısını işler. |
WS_WRITE_MESSAGE_START_CALLBACK | Özel kanal bağlaması olan bir kanal için WsWriteMessageStart çağrısını işler. |
Sayım | Açıklama |
---|---|
WS_CHANNEL_BINDING | Kanal için kullanılacak protokol yığınını gösterir. |
WS_CHANNEL_PROPERTY_ID | Her kanal özelliğini bir kimlikle tanımlar. |
WS_CHANNEL_STATE | Kanalın durumu. |
WS_CHANNEL_TYPE | Kanalın oturumlu olup olmadığı ve hangi iletişim yönlerinin desteklendiği gibi temel özelliklerini gösterir. |
WS_ENCODING | Farklı kodlamalar (ileti biçimleri). |
WS_RECEIVE_OPTION | Kanaldan alırken ileti gerekip gerekmediğini belirtir. |
WS_TRANSFER_MODE | Gönderilen veya alınan iletilerin akışa alınıp alınmayacağını veya arabelleğe alınıp alınmayacağını belirtir. |
Fonksiyon | Açıklama |
---|---|
WsAbandonMessage | Kanal için iletinin geri kalanını atlar. |
WsAbortChannel | Belirtilen kanalda bekleyen tüm G/Ç'yi durdurur ve kanal durumunu WS_CHANNEL_STATE_FAULTEDolarak ayarlar. |
WsCloseChannel | Artık gerekli olmadığında kanalı kapatır. |
WsCreateChannel | Bir kanal oluşturur. |
WsCreateChannelForListener | Dinleyici için bir kanal oluşturur. |
WsFreeChannel | Bir kanalla ilişkili bellek kaynaklarını serbest bırakır. |
WsGetChannelProperty | Kanal parametresi tarafından başvuruda bulunan Kanalın bir özelliğini alır. |
WsOpenChannel | Bir uç noktaya kanal açar. |
WsReadMessageEnd | Kanaldan iletinin kapanış öğelerini okur. |
WsReadMessageStart | Kanaldan sonraki iletinin üst bilgilerini okur ve gövde öğelerini okumaya hazırlanır. |
WsReceiveMessage | Bir ileti alır ve iletinin gövdesini bir değer olarak seri durumdan çıkartır. |
WsRequestReply | bir istek iletisi gönderir ve bağıntılı bir yanıt iletisi alır. |
WsResetChannel | Yeniden kullanılabilmesi için kanalı sıfırlayın. |
WsSendMessage | Gövde öğesini yazmak için serileştirme kullanarak kanalda bir ileti gönderir. |
WsSendReplyMessage | Alınan bir iletiyi yanıtlayan bir ileti gönderir. |
WsSetChannelProperty | Kanalın özelliğini ayarlar. |
WsSetMessageProperty | İletinin özelliğini ayarlar. |
WsWriteMessageEnd | bir iletinin kapanış öğelerini kanala yazar. |
WsWriteMessageStart | Bir iletinin üst bilgilerini kanala yazın ve gövde öğelerini yazmaya hazırlanır. |
Kulp | Açıklama |
---|---|
WS_CHANNEL | Kanala başvurmak için kullanılan opak bir tür. |
Yapı | Açıklama |
---|---|
WS_CHANNEL_DECODER | Alınan iletinin içerik türünü ve kodlanmış baytlarını dönüştüren bir geri çağırma kümesi. |
WS_CHANNEL_ENCODER | Gönderilen iletinin içerik türünü ve kodlanmış baytlarını dönüştürebilen bir geri çağırma kümesi. |
WS_CHANNEL_PROPERTIES | bir dizi WS_CHANNEL_PROPERTY yapısı. |
WS_CHANNEL_PROPERTY | Kanala özgü bir ayar. |
WS_CUSTOM_CHANNEL_CALLBACKS | Özel kanalın uygulamasını oluşturan bir geri çağırma kümesi. |
WS_CUSTOM_HTTP_PROXY | WS_CHANNEL_PROPERTY_ID numaralandırmasının WS_CHANNEL_PROPERTY_CUSTOM_HTTP_PROXY değerini kullanarak kanal için özel ara sunucuyu belirtmek için kullanılır. |
WS_HTTP_HEADER_MAPPING | WS_HTTP_MESSAGE_MAPPINGparçası olarak eşlenen tek bir üst bilgiyi temsil eder. |
WS_HTTP_MESSAGE_MAPPING | BIR HTTP isteğinin veya yanıtının bir ileti nesnesinde nasıl temsil edilmesi gerektiğiyle ilgili bilgiler. |
WS_HTTP_REDIRECT_CALLBACK_CONTEXT | HTTP otomatik yeniden yönlendirme davranışını denetlemek için geri çağırma işlevini ve durumunu belirtir. |
WS_MESSAGE_DESCRIPTION | Belirli bir işlem açıklaması için giriş ve çıkış şeması WS_MESSAGE. |