指定用于传输自定义绑定的 SOAP 消息的 HTTP 传输。
<configuration>
<system.serviceModel>
<bindings>
<customBinding>
<binding>
<httpTransport>
Syntax
<httpTransport allowCookies="Boolean"
authenticationScheme="Digest/Negotiate/Ntlm/Basic/Anonymous"
bypassProxyOnLocal="Boolean"
hostnameComparisonMode="StrongWildcard/Exact/WeakWildcard"
keepAliveEnabled="Boolean"
maxBufferSize="Integer"
proxyAddress="Uri"
proxyAuthenticationScheme="None/Digest/Negotiate/Ntlm/Basic/Anonymous"
realm="String"
transferMode="Buffered/Streamed/StreamedRequest/StreamedResponse"
unsafeConnectionNtlmAuthentication="Boolean"
useDefaultWebProxy="Boolean" />
特性和元素
下列各节描述了特性、子元素和父元素。
特性
| Attribute | Description |
|---|---|
| allowCookies | 一个布尔值,指定客户端是否接受 Cookie 并在将来的请求上传播 Cookie。 默认值为 false。与使用 Cookie 的 ASMX Web 服务交互时,可以使用此属性。 这样,就可以确保从服务器返回的 Cookie 会自动复制到该服务的所有将来的客户端请求。 |
| 认证方案 | 指定用于对 HTTP 侦听器正在处理的客户端请求进行身份验证的协议。 有效值包括: - 摘要:指定摘要式身份验证。 - 协商:与客户端协商以确定身份验证方案。 如果客户端和服务器都支持 Kerberos,则使用它;否则,使用 NTLM。 - Ntlm:指定 NTLM 身份验证。 - 基本:指定基本身份验证。 - 匿名:指定匿名身份验证。 默认值为 Anonymous。 此属性的类型 AuthenticationSchemes为 . 此属性只能设置一次。 |
| bypassProxyOnLocal | 一个布尔值,该值指示是否绕过本地地址的代理服务器。 默认值为 false。本地地址是本地 LAN 或 Intranet 上的地址。 如果服务地址以 http://localhost开头,Windows Communication Foundation (WCF)始终忽略代理。如果希望客户端在同一台计算机上与服务通信时通过代理,则应使用主机名而不是 localhost。 |
| hostnameComparisonMode | 指定用于分析 URI 的 HTTP 主机名比较模式。 有效值为, - StrongWildcard:(“+”)在指定方案、端口和相对 URI 的上下文中匹配所有可能的主机名。 - 精确:无通配符 - WeakWildcard:(“*”)匹配指定方案、端口和相对 UIR 上下文中所有可能的主机名,这些主机名尚未显式匹配或通过强通配符机制进行匹配。 此属性的类型 HostNameComparisonMode为 . 默认值为 StrongWildcard。 |
| keepAliveEnabled | 一个布尔值,指定是否与 Internet 资源建立持久连接。 |
| maxBufferSize | 一个正整数,指定缓冲区的最大大小。 默认值为524288 |
| proxyAddress | 一个 URI,指定 HTTP 代理的地址。
useSystemWebProxy如果是true,则此设置必须是 null。 默认值为 null。 |
| proxyAuthenticationScheme | 指定用于对 HTTP 代理正在处理的客户端请求进行身份验证的协议。 有效值包括: - 无:不执行身份验证。 - 摘要:指定摘要式身份验证。 - 协商:与客户端协商以确定身份验证方案。 如果客户端和服务器都支持 Kerberos,则使用它;否则,使用 NTLM。 - Ntlm:指定 NTLM 身份验证。 - 基本:指定基本身份验证。 - 匿名:指定匿名身份验证。 默认值为 Anonymous。 此属性的类型 AuthenticationSchemes为 . 请注意, AuthenticationSchemes.IntegratedWindowsAuthentication 不支持。 |
| realm | 一个字符串,指定要在代理/服务器上使用的领域。 默认值为空字符串。 服务器使用领域对受保护的资源进行分区。 每个分区可以有自己的身份验证方案和/或授权数据库。 领域仅用于基本和摘要式身份验证。 客户端成功进行身份验证后,身份验证对给定领域中的所有资源都有效。 有关领域的详细信息,请参阅 IETF 网站上的 RFC 2617。 |
| transferMode | 指定消息是缓冲还是流式传输,还是请求或响应。 有效值包括: - 缓冲:缓冲请求和响应消息。 - 流式传输:对请求和响应消息进行流式传输。 - StreamedRequest:将流式传输请求消息,并缓冲响应消息。 - StreamedResponse:将缓冲请求消息并流式传输响应消息。 默认值为 Buffered。 此属性的类型 TransferMode 为 . |
| unsafeConnectionNtlmAuthentication | 一个布尔值,该值指定是否在服务器上启用不安全的连接共享。 默认值为 false。 如果启用,则在每个 TCP 连接上执行一次 NTLM 身份验证。 |
| useDefaultWebProxy | 一个布尔值,该值指定是否使用计算机范围的代理设置,而不是用户特定的设置。 默认值为 true。 |
子元素
None
父元素
| 元素 | Description |
|---|---|
| <捆绑> | 定义自定义绑定的所有绑定功能。 |
注解
该 httpTransport 元素是创建实现 HTTP 传输协议的自定义绑定的起点。 HTTP 是用于互作性目的的主要传输。 Windows Communication Foundation(WCF)支持此传输,以确保与其他非 WCF Web 服务堆栈的互作性。