Aracılığıyla paylaş


<wsHttpBinding>

Çift yönlü olmayan hizmet sözleşmeleri için uygun güvenli, güvenilir, birlikte çalışabilir bir bağlama tanımlar. Bağlama aşağıdaki belirtimleri uygular: güvenilirlik için WS-Reliable Mesajlaşma ve ileti güvenliği ile kimlik doğrulaması için WS-Security. Aktarım HTTP, ileti kodlaması ise Metin/XML kodlamadır.

<configuration>
  <system.serviceModel>
    <bindings>
      <wsHttpBinding>

Sözdizimi

<wsHttpBinding>
  <binding allowCookies="Boolean"
           bypassProxyOnLocal="Boolean"
           closeTimeout="TimeSpan"
           hostNameComparisonMode="StrongWildCard/Exact/WeakWildcard"
           maxBufferPoolSize="integer"
           maxReceivedMessageSize="Integer"
           messageEncoding="Text/Mtom"
           name="string"
           openTimeout="TimeSpan"
           proxyAddress="URI"
           receiveTimeout="TimeSpan"
           sendTimeout="TimeSpan"
           textEncoding="UnicodeFffeTextEncoding/Utf16TextEncoding/Utf8TextEncoding"
           transactionFlow="Boolean"
           useDefaultWebProxy="Boolean">
    <reliableSession ordered="Boolean"
                     inactivityTimeout="TimeSpan"
                     enabled="Boolean" />
    <security mode="Message/None/Transport/TransportWithCredential">
      <transport clientCredentialType="Basic/Certificate/Digest/None/Ntlm/Windows"
                 proxyCredentialType="Basic/Digest/None/Ntlm/Windows"
                 realm="string" />
      <message algorithmSuite="Basic128/Basic192/Basic256/Basic128Rsa15/Basic256Rsa15/TripleDes/TripleDesRsa15/Basic128Sha256/Basic192Sha256/TripleDesSha256/Basic128Sha256Rsa15/Basic192Sha256Rsa15/Basic256Sha256Rsa15/TripleDesSha256Rsa15"
               clientCredentialType="Certificate/IssuedToken/None/UserName/Windows"
               establishSecurityContext="Boolean"
               negotiateServiceCredential="Boolean" />
    </security>
    <readerQuotas maxArrayLength="Integer"
                  maxBytesPerRead="Integer"
                  maxDepth="Integer"
                  maxNameTableCharCount="Integer"
                  maxStringContentLength="Integer" />
  </binding>
</wsHttpBinding>

Öznitelikler ve Öğeler

Aşağıdaki bölümlerde öznitelikler, alt öğeler ve üst öğeler açıklanmaktadır

Attributes

Özellik Description
Allowcookies İstemcinin tanımlama bilgilerini kabul edip etmediğini ve bunları gelecekteki isteklerde yayıp yaymadığını gösteren Boole değeri. Varsayılan değer false'tur.

Tanımlama bilgileri kullanan ASMX Web hizmetleriyle etkileşim kurarken bu özelliği kullanabilirsiniz. Bu şekilde, sunucudan döndürülen tanımlama bilgilerinin bu hizmet için gelecekteki tüm istemci isteklerine otomatik olarak kopyalandığından emin olabilirsiniz.
Bypassproxyonlocal Yerel adresler için ara sunucunun atlanıp atlanmayacağını gösteren boole değeri. Varsayılan değer: false.
closeTimeout Kapatma TimeSpan işleminin tamamlanması için sağlanan zaman aralığını belirten değer. Bu değer değerinden büyük veya buna Zeroeşit olmalıdır. Varsayılan değer 00:01:00'dır.
hostnameComparisonMode URI'leri ayrıştırmak için kullanılan HTTP ana bilgisayar adı karşılaştırma modunu belirtir. Bu öznitelik, URI'de eşleştirilirken ana bilgisayar adının hizmete ulaşmak için kullanılıp kullanılmadığını gösteren türündedir HostNameComparisonMode. Varsayılan değer, eşleşmedeki konak adını yoksayan değeridir StrongWildcard.
maxBufferPoolSize Bu bağlama için en büyük arabellek havuzu boyutunu belirten bir tamsayı. Varsayılan değer 524.288 bayttır (512 * 1024). Windows Communication Foundation'ın (WCF) birçok bölümünde arabellekler kullanılır. Arabellekleri her kullanışında oluşturmak ve yok etmek pahalıdır ve arabellekler için atık toplama da pahalıdır. Arabellek havuzları ile havuzdan bir arabellek alabilir, kullanabilir ve işiniz bittiğinde havuza döndürebilirsiniz. Bu nedenle arabellek oluşturma ve yok etme ek yükünden kaçınılır.
maxReceivedMessageSize Bu bağlamayla yapılandırılmış bir kanalda alınabilecek üst bilgiler de dahil olmak üzere bayt cinsinden en büyük ileti boyutunu belirten pozitif bir tamsayı. Bu sınırı aşan bir iletinin göndereni SOAP hatası alır. Alıcı, iletiyi bırakır ve izleme günlüğünde olayın bir girdisini oluşturur. Varsayılan değer 65536'dır.
messageEncoding İletiyi kodlamak için kullanılan kodlayıcıyı tanımlar. Geçerli değerler şunlardır:

- Metin: Metin iletisi kodlayıcı kullanın.
- Mtom: İleti İletim Kuruluş Mekanizması 1.0 (MTOM) kodlayıcı kullanın.
- Varsayılan değer Metin'dir.

Bu öznitelik türündedir WSMessageEncoding.
name Bağlamanın yapılandırma adını içeren bir dize. Bağlama için tanımlama olarak kullanıldığından bu değer benzersiz olmalıdır. .NET Framework 4'den başlayarak, bağlamaların ve davranışların bir ada sahip olması gerekmez. Varsayılan yapılandırma ve adsız bağlamalar ve davranışlar hakkında daha fazla bilgi için bkz. WCF Hizmetleri içinBasitleştirilmiş Yapılandırma ve Basitleştirilmiş Yapılandırma.
openTimeout Açık TimeSpan işlemin tamamlanması için sağlanan zaman aralığını belirten değer. Bu değer değerinden büyük veya buna Zeroeşit olmalıdır. Varsayılan değer 00:01:00'dır.
proxyAddress HTTP ara sunucusunun adresini belirten bir URI. ise useSystemWebProxytrue, bu ayar olmalıdır null. Varsayılan değer: null.
receiveTimeout Alma TimeSpan işleminin tamamlanması için sağlanan zaman aralığını belirten değer. Bu değer değerinden büyük veya buna Zeroeşit olmalıdır. Varsayılan değer 00:01:00'dır.
sendTimeout TimeSpan Gönderme işleminin tamamlanması için sağlanan zaman aralığını belirten değer. Bu değer değerinden büyük veya buna Zeroeşit olmalıdır. Varsayılan değer 00:01:00'dır.
textEncoding Bağlamada ileti yaymak için kullanılacak karakter kümesi kodlamasını belirtir. Geçerli değerler şunlardır:

- UnicodeFffeTextEncoding: Unicode BigEndian kodlaması.
- Utf16TextEncoding: 16 bit kodlama.
- Utf8TextEncoding: 8 bit kodlama.

Varsayılan değer Utf8TextEncoding'dir.

Bu öznitelik türündedir Encoding.
transactionFlow Bağlamanın akış WS-Transactions'ı destekleyip desteklemediğini belirten boole değeri. Varsayılan değer: false.
useDefaultWebProxy Sistemin otomatik olarak yapılandırılan HTTP proxy'sinin kullanılıp kullanılmadığını belirten boole değeri. Varsayılan değer: true.

Alt Öğeler

Öğe Description
<güvenlik> Bağlama için güvenlik ayarlarını tanımlar. Bu öğe türündedir WSHttpSecurityElement.
<readerQuotas> Bu bağlamayla yapılandırılan uç noktalar tarafından işlenebilen SOAP iletilerinin karmaşıklığıyla ilgili kısıtlamaları tanımlar. Bu öğe türündedir XmlDictionaryReaderQuotasElement.
<Reliablesession> Kanal uç noktaları arasında güvenilir oturumların kurulup kurulmadığını belirtir.

Üst Öğeler

Öğe Description
<Bağlama> Bu öğe, standart ve özel bağlamalardan oluşan bir koleksiyonu barındırıyor.

Açıklamalar

WSHttpBinding ile benzerdir BasicHttpBinding ancak daha fazla Web hizmeti özelliği sağlar. HTTP aktarımını kullanır ve TemelHttpBinding gibi ileti güvenliği sağlar, ancak aynı zamanda varsayılan olarak etkinleştirilen veya tek bir denetim ayarıyla kullanılabilen işlemler, güvenilir mesajlaşma ve WS-Adresleme de sağlar.

Example

<configuration>
  <system.ServiceModel>
    <bindings>
      <wsHttpBinding>
        <binding closeTimeout="00:00:10"
                 openTimeout="00:00:20"
                 receiveTimeout="00:00:30"
                 sendTimeout="00:00:40"
                 bypassProxyOnLocal="false"
                 transactionFlow="false"
                 hostNameComparisonMode="WeakWildcard"
                 maxReceivedMessageSize="1000"
                 messageEncoding="Mtom"
                 proxyAddress="http://foo/bar"
                 textEncoding="utf-16"
                 useDefaultWebProxy="false">
          <reliableSession ordered="false"
                           inactivityTimeout="00:02:00"
                           enabled="true" />
          <security mode="Transport">
            <transport clientCredentialType="Digest"
                       proxyCredentialType="None"
                       realm="someRealm" />
            <message clientCredentialType="Windows"
                     negotiateServiceCredential="false"
                     algorithmSuite="Aes128"
                     defaultProtectionLevel="None" />
          </security>
        </binding>
      </wsHttpBinding>
    </bindings>
  </system.ServiceModel>
</configuration>

Ayrıca bakınız