<basicHttpBinding><basicHttpBinding>

Stellt eine Bindung dar, die ein Windows Communication Foundation-Dienst (WCF) zum Konfigurieren und Verfügbarmachen von Endpunkten verwenden kann, die mit ASMX-basierten Webdiensten und -clients sowie mit anderen Diensten kommunizieren können, die mit WS-I Basic Profile 1.1 konform sind.Represents a binding that a Windows Communication Foundation (WCF) service can use to configure and expose endpoints that are able to communicate with ASMX-based Web services and clients and other services that conform to the WS-I Basic Profile 1.1.

<system.ServiceModel><system.ServiceModel>
<bindings><bindings>
<basicHttpBinding><basicHttpBinding>

SyntaxSyntax

<basicHttpBinding>  
   <binding   
       allowCookies="Boolean"  
       bypassProxyOnLocal="Boolean"  
       closeTimeout="TimeSpan"   
       envelopeVersion="None/Soap11/Soap12"  
       hostNameComparisonMode="StrongWildCard/Exact/WeakWildcard"  
       maxBufferPoolSize="Integer"  
       maxBufferSize="Integer"  
       maxReceivedMessageSize="Integer"  
       messageEncoding="Text/Mtom"  
              name="string"   
       openTimeout="TimeSpan"   
       proxyAddress="URI"  
        receiveTimeout="TimeSpan"  
       sendTimeout="TimeSpan"  
              textEncoding="UnicodeFffeTextEncoding/Utf16TextEncoding/Utf8TextEncoding"  
              transferMode="Buffered/Streamed/StreamedRequest/StreamedResponse"  
       useDefaultWebProxy="Boolean"  
       <security mode="None/Transport/Message/TransportWithMessageCredential/TransportCredentialOnly">  
           <transport clientCredentialType="None/Basic/Digest/Ntlm/Windows/Certificate"  
                  proxyCredentialType="None/Basic/Digest/Ntlm/Windows"  
                                    realm="string" />  
           <message   
                 algorithmSuite="Basic128/Basic192/Basic256/Basic128Rsa15/Basic256Rsa15/TripleDes/TripleDesRsa15/Basic128Sha256/Basic192Sha256/TripleDesSha256/Basic128Sha256Rsa15/Basic192Sha256Rsa15/Basic256Sha256Rsa15/TripleDesSha256Rsa15"  
                            clientCredentialType="UserName/Certificate"/>  
       </security>  
       <readerQuotas   
            maxArrayLength="Integer"  
            maxBytesPerRead="Integer"  
            maxDepth="Integer"             maxNameTableCharCount="Integer"                maxStringContentLength="Integer" />  
   </binding>  
</basicHttpBinding>  

Attribute und ElementeAttributes and Elements

In den folgenden Abschnitten werden Attribute sowie untergeordnete und übergeordnete Elemente beschrieben.The following sections describe attributes, child elements, and parent elements.

AttributeAttributes

AttributAttribute BeschreibungDescription
allowCookies Ein boolescher Wert, der angibt, ob der Client Cookies akzeptiert und für zukünftige Anfragen propagiert.A Boolean value that indicates whether the client accepts cookies and propagates them on future requests. Die Standardeinstellung ist false.The default is false.

Sie können diese Eigenschaft verwenden, wenn Sie mit ASMX-Webdiensten interagieren, die Cookies verwenden.You can use this property when you interact with ASMX Web services that use cookies. Auf diese Weise können Sie sicherstellen, dass die vom Server zurückgegebenen Cookies automatisch bei allen zukünftigen Clientanforderungen für diesen Dienst kopiert werden.In this way, you can be sure that the cookies returned from the server are automatically copied to all future client requests for that service.
bypassProxyOnLocal Ein boolescher Wert, der angibt, ob der Proxyserver bei lokalen Adressen umgangen werden soll.A Boolean value that indicates whether to bypass the proxy server for local addresses. Die Standardeinstellung ist false.The default is false.

Eine Internetressource gilt als lokal, wenn sie über eine lokale Adresse verfügt.An Internet resource is local if it has a local address. Eine lokale Adresse befindet, die auf demselben Computer, im lokalen LAN oder Intranet und wird erkannt werden, anhand des fehlenden Punkts (.) wie in den URIs "http://webserver/"und"http://localhost/".A local address is one that is on same computer, the local LAN or intranet and is identified, syntactically, by the lack of a period (.) as in the URIs "http://webserver/" and "http://localhost/".

Durch dieses Attribut wird festgelegt, ob mit BasicHttpBinding konfigurierte Endpunkte den Proxyserver zum Zugreifen auf lokale Ressourcen verwenden.Setting this attribute determines whether endpoints configured with the BasicHttpBinding use the proxy server when accessing local resources. Wenn dieses Attribut true ist, wird bei Anforderungen lokaler Internetressourcen der Proxyserver nicht verwendet.If this attribute is true, requests to local Internet resources do not use the proxy server. Ist dieses Attribut auf true festgelegt, sollten Sie den Hostnamen anstatt localhost verwenden, wenn die Clients bei der Kommunikation mit Diensten auf demselben Computer einen Proxy nutzen sollen.Use the host name (rather than localhost) if you want clients to go through a proxy when talking to services on the same machine when this attribute is set to true.

Wenn dieses Attribut false ist, werden alle Internetanforderungen über den Proxyserver ausgeführt.When this attribute is false, all Internet requests are made through the proxy server.
closeTimeout Ein TimeSpan-Wert, der das Zeitintervall für den Abschluss eines Schließvorgangs angibt.A TimeSpan value that specifies the interval of time provided for a close operation to complete. Dieser Wert muss größer oder gleich Zero sein.This value should be greater than or equal to Zero. Der Standardwert ist 00:01:00.The default is 00:01:00.
envelopeVersion Gibt die SOAP-Version an, die für Nachrichten verwendet wird, die von dieser Bindung verarbeitet werden.Specifies the version of SOAP that is used for messages that are processed by this binding. Der einzig gültige Wert ist Soap11.The only valid value is Soap11.
hostnameComparisonMode Gibt den HTTP-Hostnamen-Vergleichsmodus an, der verwendet wird, um URIs zu analysieren.Specifies the HTTP hostname comparison mode used to parse URIs. Dieses Attribut ist vom Typ HostNameComparisonMode und gibt an, ob beim Abgleich des URI der Hostname zum Erreichen des Dienstes verwendet wird.This attribute is of type HostNameComparisonMode, which indicates whether the hostname is used to reach the service when matching on the URI. Der Standardwert lautet StrongWildcard, wodurch der Hostname beim Abgleich ignoriert wird.The default value is StrongWildcard, which ignores the hostname in the match.
maxBufferPoolSize Eine ganze Zahl, die die maximale Speicherkapazität der Nachrichtenpuffer angibt, die Nachrichten aus dem Kanal empfangen.An integer value that specifies the maximum amount of memory that is allocated for use by the manager of the message buffers that receive messages from the channel. Der Standardwert ist 524288 (0x80000) Bytes.The default value is 524288 (0x80000) bytes.

Der Puffer-Manager reduziert den Pufferaufwand durch Verwendung eines Pufferpools.The Buffer Manager minimizes the cost of using buffers by using a buffer pool. Puffer sind zur Verarbeitung von Nachrichten durch den Dienst erforderlich, wenn sie aus dem Kanal eintreffen.Buffers are required to process messages by the service when they come out of the channel. Wenn die Speicherkapazität des Pufferpools zur Verarbeitung der Nachrichten nicht ausreicht, muss der Puffer-Manager zusätzliche Speicherkapazität aus dem CLR-Heap zuweisen. Dadurch wird die Auslastung der Garbage Collection erhöht.If there is not sufficient memory in the buffer pool to process the message load, the Buffer Manager must allocate additional memory from the CLR heap, which increases the garbage collection overhead. Eine umfangreiche Zuweisung aus dem CLR-Heap der Garbage Collection weist darauf hin, dass die Größe des Pufferpools nicht ausreichend ist und dass die Leistung durch eine größere Zuweisung infolge einer Erhöhung der des maximalen Grenzwerts, der durch dieses Attribut angegeben wird, verbessert werden kann.Extensive allocation from the CLR garbage heap is an indication that the buffer pool size is too small and that performance can be improved with a larger allocation by increasing the limit specified by this attribute.
maxBufferSize Eine ganze Zahl, die die maximale Größe eines Puffers in Bytes angibt, in dem Nachrichten gespeichert werden, während sie für einen mit dieser Bindung konfigurierten Endpunkt verarbeitet werden.An integer value that specifies the maximum size, in bytes, of a buffer that stores messages while they are processed for an endpoint configured with this binding. Der Standardwert ist 65.536 Bytes.The default value is 65,536 bytes.
maxReceivedMessageSize Eine positive ganze Zahl, die die maximale Nachrichtengröße in Bytes einschließlich Header definiert, die in einem für diese Bindung konfigurierten Kanal beim Nachrichtenempfang zulässig ist.A positive integer that defines the maximum message size, in bytes, including headers, for a message that can be received on a channel configured with this binding. Der Absender erhält einen SOAP-Fehler, wenn die Nachricht zu groß für den Empfänger ist.The sender receives a SOAP fault if the message is too large for the receiver. Der Empfänger verwirft die Nachricht und erstellt einen Eintrag des Ereignisses im Ablaufverfolgungsprotokoll.The receiver drops the message and creates an entry of the event in the trace log. Der Standardwert beträgt 65.536 Bytes.The default is 65,536 bytes.
messageEncoding Definiert den Encoder, der verwendet wird, um die SOAP-Nachricht zu codieren.Defines the encoder used to encode the SOAP message. Folgende Werte sind gültig:Valid values include the following:

-Text: Verwenden Sie einen textnachrichtenencoder.- Text: Use a text message encoder.
-Mtom: Verwendung eines Encoders Message Transmission Organisation Mechanism 1.0 (MTOM).- Mtom: Use a Message Transmission Organization Mechanism 1.0 (MTOM) encoder.

Der Standardwert ist Text.The default is Text. Dieses Attribut ist vom Typ WSMessageEncoding.This attribute is of type WSMessageEncoding.
name Eine Zeichenfolge, die den Konfigurationsnamen der Bindung enthält.A string that contains the configuration name of the binding. Dieser Wert sollte eindeutig sein, da er von der Bindung zur Identifizierung verwendet wird.This value should be unique because it is used as an identification for the binding. Jede Bindung hat ein name-Attribut und ein namespace-Attribut, die die Bindung in den Metadaten des Diensts eindeutig identifizieren.Each binding has a name and namespace attribute that together uniquely identify it in the metadata of the service. Außerdem kommt dieser Name bei den Bindungen eines Typs nur einmal vor.In addition, this name is unique among bindings of the same type. Ab .NET Framework 4.NET Framework 4 müssen Bindungen und Verhalten keinen Namen aufweisen.Starting with .NET Framework 4.NET Framework 4, bindings and behaviors are not required to have a name. Weitere Informationen zur Standardkonfiguration und namenlos Bindungen und Verhaltensweisen finden Sie unter vereinfachte Konfiguration und vereinfachte Konfiguration für WCF-Dienste.For more information about default configuration and nameless bindings and behaviors, see Simplified Configuration and Simplified Configuration for WCF Services.
namespace Gibt den XML-Namespace der Bindung an.Specifies the XML namespace of the binding. Der Standardwert ist „http://tempuri.org/Bindings“.The default value is "http://tempuri.org/Bindings". Jede Bindung hat ein name-Attribut und ein namespace-Attribut, die die Bindung in den Metadaten des Diensts eindeutig identifizieren.Each binding has a name and namespace attribute that together uniquely identify it in the metadata of the service.
openTimeout Ein TimeSpan-Wert, der das Zeitintervall für den Abschluss eines Öffnungsvorgangs angibt.A TimeSpan value that specifies the interval of time provided for an open operation to complete. Dieser Wert muss größer oder gleich Zero sein.This value should be greater than or equal to Zero. Der Standardwert ist 00:01:00.The default is 00:01:00.
proxyAddress Ein URI, der die Adresse des HTTP-Proxys enthält.A URI that contains the address of the HTTP proxy. Wenn useSystemWebProxy auf true festgelegt ist, muss diese Einstellung null lauten.If useSystemWebProxy is set to true, this setting must be null. Die Standardeinstellung ist null.The default is null.
receiveTimeout Ein TimeSpan-Wert, der das Zeitintervall für den Abschluss eines Empfangsvorgangs angibt.A TimeSpan value that specifies the interval of time provided for a receive operation to complete. Dieser Wert muss größer oder gleich Zero sein.This value should be greater than or equal to Zero. Der Standardwert ist 00:10:00.The default is 00:10:00.
sendTimeout Ein TimeSpan-Wert, der das Zeitintervall für den Abschluss eines Sendevorgangs angibt.A TimeSpan value that specifies the interval of time provided for a send operation to complete. Dieser Wert muss größer oder gleich Zero sein.This value should be greater than or equal to Zero. Der Standardwert ist 00:01:00.The default is 00:01:00.
textEncoding Legt die Zeichensatzkodierung fest, die zum Ausgeben von Nachrichten über die Bindung verwendet werden soll.Sets the character set encoding to be used for emitting messages on the binding. Folgende Werte sind gültig:Valid values include the following:

-BigEndianUnicode: Unicode BigEndian-Codierung.- BigEndianUnicode: Unicode BigEndian encoding.
– Unicode: 16-Bit-Codierung.- Unicode: 16-bit encoding.
-UTF8: 8-Bit-Codierung- UTF8: 8-bit encoding

Der Standard ist UTF8.The default is UTF8. Dieses Attribut ist vom Typ Encoding.This attribute is of type Encoding.
transferMode Ein gültiger TransferMode-Wert, der angibt, ob Nachrichten bei einer Anforderung oder Antwort gepuffert oder per Stream übertragen werden.A valid TransferMode value that specifies whether messages are buffered or streamed on a request or response.
useDefaultWebProxy Ein boolescher Wert, der angibt, ob der automatisch konfigurierte HTTP-Proxy des Systems bei Verfügbarkeit verwendet werden soll.A Boolean value that specifies whether the auto-configured HTTP proxy of the system should be used, if available. Die Standardeinstellung ist true.The default is true.

Untergeordnete ElementeChild Elements

ElementElement BeschreibungDescription
<security><security> Definiert die Sicherheitseinstellungen für die Bindung.Defines the security settings for the binding. Dieses Element ist vom Typ BasicHttpSecurityElement.This element is of type BasicHttpSecurityElement.
<readerQuotas><readerQuotas> Definiert die Beschränkungen der Komplexität von SOAP-Nachrichten, die von Endpunkten verarbeitet werden können, die mit dieser Bindung konfiguriert wurden.Defines the constraints on the complexity of SOAP messages that can be processed by endpoints configured with this binding. Dieses Element ist vom Typ XmlDictionaryReaderQuotasElement.This element is of type XmlDictionaryReaderQuotasElement.

Übergeordnete ElementeParent Elements

ElementElement BeschreibungDescription
<bindings><bindings> Dieses Element enthält eine Auflistung von standardmäßigen und benutzerdefinierten Bindungen.This element holds a collection of standard and custom bindings.

HinweiseRemarks

BasicHttpBinding verwendet HTTP als Transportprotokoll für das Senden von SOAP 1.1-Nachrichten.The BasicHttpBinding uses HTTP as the transport for sending SOAP 1.1 messages. Ein Dienst kann diese Bindung zum Verfügbarmachen von mit WS-I BP 1.1 konformen Endpunkten verwenden, wie z. B. Endpunkte für ASMX-Clients.A service can use this binding to expose endpoints that conform to WS-I BP 1.1, such as those that ASMX clients consume. In ähnlicher Weise kann ein Client BasicHttpBinding zum Kommunizieren mit Diensten verwenden, die mit WS-I BP 1.1 konforme Endpunkte verfügbar machen, wie z. B. ASMX-Webdienste oder mit BasicHttpBinding konfigurierte Dienste.Similarly, a client can use the BasicHttpBinding to communicate with services exposing endpoints that conform to WS-I BP 1.1, such as ASMX Web services or services configured with the BasicHttpBinding.

Sicherheit ist standardmäßig deaktiviert, jedoch können hinzugefügt werden, Festlegen der Mode-Attribut der <Sicherheit > einen anderen Wert als untergeordnetes Element None.Security is turned off by default, but can be added setting the mode attribute of the <security> child element to a value other than None. Standardmäßig wird "Text"-Nachrichtencodierung und UTF-8-Textcodierung verwendet.It uses a "Text" message encoding and UTF-8 text encoding by default.

BeispielExample

Im folgenden Beispiel wird die Verwendung von BasicHttpBinding veranschaulicht, bei der HTTP-Kommunikation und maximale Interoperabilität mit Webdiensten der ersten und zweiten Generation sichergestellt wird.The following example demonstrates the use of BasicHttpBinding that provides HTTP communication and maximum interoperability with first- and second-generation Web services. Die Bindung wird in den Konfigurationsdateien für den Client und Dienst angegeben.The binding is specified in the configuration files for the client and service. Der Bindungstyp wird im binding-Attribut des <endpoint>-Elements angegeben.The binding type is specified using the binding attribute of the <endpoint> element. Wenn Sie die Standardbindung konfigurieren und einige der Einstellungen ändern möchten, müssen Sie eine Bindungskonfiguration definieren.If you want to configure the basic binding and change some of its settings, it is necessary to define a binding configuration. Der Endpunkt muss auf die Bindungskonfiguration anhand des Namens und des bindingConfiguration-Attributs des <endpoint>-Elements verweisen, wie im folgenden Konfigurationscode für den Dienst gezeigt.The endpoint must reference the binding configuration by name by using the bindingConfiguration attribute of the <endpoint> element, as shown in the following configuration code for the service.

<system.serviceModel>   
  <services>  
    <service   
        type="Microsoft.ServiceModel.Samples.CalculatorService"  
        behaviorConfiguration="CalculatorServiceBehavior">  
       <endpoint address=""  
             binding="basicHttpBinding"  
             bindingConfiguration="Binding1"   
             contract="Microsoft.ServiceModel.Samples.ICalculator" />  
    </service>  
  </services>  
  <bindings>  
     <basicHttpBinding>  
        <binding name="Binding1"   
               hostNameComparisonMode="StrongWildcard"   
               receiveTimeout="00:10:00"  
               sendTimeout="00:10:00"  
               openTimeout="00:10:00"  
               closeTimeout="00:10:00"  
               maxReceivedMessageSize="65536"   
               maxBufferSize="65536"   
               maxBufferPoolSize="524288"   
               transferMode="Buffered"   
               messageEncoding="Text"   
               textEncoding="utf-8"  
               bypassProxyOnLocal="false"  
               useDefaultWebProxy="true" >  
              <security mode="None" />  
         </binding>  
     </basicHttpBinding>  
  </bindings>  
</system.serviceModel>  

BeispielExample

Ab .NET Framework 4.NET Framework 4 müssen Bindungen und Verhalten keinen Namen aufweisen.Starting with .NET Framework 4.NET Framework 4, bindings and behaviors are not required to have a name. Die Funktionalität aus dem vorherigen Beispiel kann erreicht werden, indem bindingConfiguration aus der Endpunktadresse und der Name aus der Bindung entfernt wird.The functionality from the previous example can be accomplished by removing the bindingConfiguration from the endpoint address and the name frm the binding.

<system.serviceModel>   
  <services>  
    <service   
        type="Microsoft.ServiceModel.Samples.CalculatorService"  
        behaviorConfiguration="CalculatorServiceBehavior">  
       <endpoint address=""  
             binding="basicHttpBinding"  
             contract="Microsoft.ServiceModel.Samples.ICalculator" />  
    </service>  
  </services>  
  <bindings>  
     <basicHttpBinding>  
        <binding   
               hostNameComparisonMode="StrongWildcard"   
               receiveTimeout="00:10:00"  
               sendTimeout="00:10:00"  
               openTimeout="00:10:00"  
               closeTimeout="00:10:00"  
               maxReceivedMessageSize="65536"   
               maxBufferSize="65536"   
               maxBufferPoolSize="524288"   
               transferMode="Buffered"   
               messageEncoding="Text"   
               textEncoding="utf-8"  
               bypassProxyOnLocal="false"  
               useDefaultWebProxy="true" >  
              <security mode="None" />  
         </binding>  
     </basicHttpBinding>  
  </bindings>  
</system.serviceModel>  

Weitere Informationen zur Standardkonfiguration und namenlos Bindungen und Verhaltensweisen finden Sie unter vereinfachte Konfiguration und vereinfachte Konfiguration für WCF-Dienste.For more information about default configuration and nameless bindings and behaviors, see Simplified Configuration and Simplified Configuration for WCF Services.

Siehe auchSee Also

Binding
BindingElement
BasicHttpBinding
BasicHttpBindingElement
BindungenBindings
Konfigurieren der vom System bereitgestellten BindungenConfiguring System-Provided Bindings
Verwenden von Bindungen, um Windows Communication Foundation-Dienste und Clients konfigurierenUsing Bindings to Configure Windows Communication Foundation Services and Clients
<binding><binding>