Uç Nokta Adresi
Uç nokta adresi, ağdaki bir hizmetin adresini temsil eder. WsOpenChannel işlevini çağırarak birkanalı açtığınızda, iletişim kuracağınız hizmetin uç nokta adresini sağlamanız ve açmak istediğiniz kanalı belirtmeniz gerekir.
Uç nokta adresi şunlardan oluşur:
- URL
- üst bilgi kümesi (isteğe bağlı)
- bir uzantı kümesi (isteğe bağlı)
- hizmetin güvenlik kimliğini temsil eden isteğe bağlı bir kimliği.
bir ileti ele alındığında, URL iletinin "Alıcı" üst bilgisi olur. Uç nokta adresinin parçası olan tüm üst bilgiler de iletiye eklenir.
Kanallar, WsOpenChannelgeçirilen WS_ENDPOINT_ADDRESS yapısını kullanarak gönderilen tüm iletileri otomatik olarak ele alır. Bu varsayılan davranışı geçersiz kılmak için WsAddressMessage işlevini de kullanabilirsiniz.
WS_ENDPOINT_ADDRESS parametre olarak geçirildiğinde WsOpenChannel ve WsOpenServiceProxy işlevleri bellekte WS_ENDPOINT_ADDRESS parametresinin bir kopyasını oluşturur ve boyutu 65536 bayt ile sınırlıdır. WsAddressMessage, WS_ENDPOINT_ADDRESS parametresinin bir kopyasının oluşturulmasını gerektirmediğinden bu sınırlamaya sahip değildir.
WS_ENDPOINT_ADDRESSuzantıları alanında belirtilen uzantılar iletiyi ele almak için kullanılmaz, bunun yerine hizmet hakkında ek bilgi (örneğin meta veriler) sağlamak için kullanılabilecek bir genişletilebilirlik mekanizmasıdır. Yaygın uzantılar WsReadEndpointAddressExtension işleviyle okunabilir.
Uç nokta adresinin isteğe bağlı kimlik alanı, örneğin hizmetin çalıştığı makinenin DNS adını veya hizmetin çalıştığı Windows hesabının UPN'sini içerebilir. Kimlik alanı, iletinin adreslenmesinde kullanılmaz, ancak hizmet için bir güvenlik belirteci almak (örneğin, hedef UPN'ye Kerberos bileti almak için) ve hizmet yanıtlarının kimliğini doğrulamak için (örneğin, SSL sırasında döndürülen hizmet sertifikasında ad denetimleri için kullanılan bir DNS kimliği) kullanılabilir.
Uç nokta adresleri, WS_TYPEWS_ENDPOINT_ADDRESS_TYPE numaralandırma değeriyle serileştirme kullanılarak okunabilir ve yazılabilir. Bir uç nokta adresini seri hale getirmek için, WS_ADDRESSING_VERSION numaralandırmasında belirtildiği gibi adresleme üst bilgileri için kullanılan belirtim sürümünü bilmeniz gerekir.