可以通过编程方式或使用 BizTalk Server 管理控制台配置 HTTP 发送端口。
以编程方式配置 HTTP 发送端口
HTTP 适配器将其配置信息存储在 BizTalk 管理数据库中(也称为配置数据库)。 将配置信息存储在自定义 XML 属性包中。 在 HTTP 适配器初始化及其运行时,服务器会将配置传递给适配器,如下所示:
- 对于 HTTP 发送处理程序,配置信息通过调用 IPersistPropertyBag 接口的 Load 方法传递给适配器。 
- 对于 HTTP 发送端口,配置信息作为消息上下文中的一组属性传递给适配器。 HTTP 命名空间将这些属性组合在一起。 - BizTalk 资源管理器对象模型公开 - ItransportInfo发送端口的适配器配置接口,其中包含- TransportTypeData读/写属性。 此属性接受 HTTP 发送端口配置属性包,它是一个名称/值对格式的 XML 字符串。 请注意,若要在 BizTalk Explorer 对象模型中设置此属性,必须先在 ITransportInfo 接口的属性上- Address设置此属性。- 不需要设置 ITransportInfo 接口的 TransportTypeData 属性。 如果未设置,HTTP 适配器将使用 HTTP 发送处理程序的默认值。 - 如果未定义与处理程序配置重复的发送端口配置属性,则使用处理程序的配置属性。 如果 HTTP 发送处理程序没有配置值,HTTP 发送适配器会在事件日志中记录错误,并将消息移动到备份适配器。 - 可以在消息上下文上以编程方式设置配置属性。 可以在 BizTalk Server 业务流程计划或自定义管道组件中设置这些属性。 使用这些属性时,适用以下规则: 
- 如果在编排或接收管道中的自定义管道组件上设置了配置属性,则: - 如果将消息发送到静态发送端口,则会使用为该发送端口配置的值覆盖属性值。 
- 如果消息发送到动态发送端口,属性值将不会被修改。 
 
- 如果在发送管道的自定义管道组件中设置配置属性,则: - 无论消息是发送到静态还是动态发送端口,都不会覆盖该值。
 - 下表列出了可在 BizTalk Explorer 对象模型中为 HTTP 发送位置设置的配置属性。 
| 属性名称 | 类型 | DESCRIPTION | 限制 | 注释 | 
|---|---|---|---|---|
| RequestTimeout | xs:int | 等待来自服务器的响应的超时期限。 如果设置为零(0),系统会根据请求消息大小计算超时。 | 最小值: 0 最大值: MAX_LONG | 默认值: 0 | 
| 内容类型 | xs:string | 请求消息的内容类型 | 最小长度: 0 最大长度:256 | 默认值: 文本/XML | 
| MaxRedirects | xs:int | HTTP 适配器可以重定向请求的最大次数。 | 最小值: 0 最大值: 10 | 默认值: 5 | 
| UseHandlerProxySettings | xs:boolean | 指定 HTTP 发送端口是否将使用发送处理程序的代理配置。 | 没有 | 默认值: 真 如果为 true,则发送端口将使用在处理程序级别指定的代理设置。 如果为 false,则发送适配器将使用在发送端口上指定的代理信息。 | 
| UseProxy | xs:boolean | 指定 HTTP 适配器是否将使用代理服务器。 代理服务器可由所有 HTTP 发送端口共享。 | 没有 | 默认值: 假 如果 UseHandlerProxySettings 为 True,则忽略此属性。 | 
| ProxyName | xs:string | 指定代理服务器名称。 | 最小长度: 0 最大长度:256 | 默认值: 空 如果 UseHandlerProxySettings 属性设置为 True,HTTP 发送适配器将忽略此属性。 否则,仅当 UseProxy 为 True 时,HTTP 发送适配器才使用此属性。 如果 UseProxy 为 True,则需要此属性。 | 
| ProxyPort | xs:int | 指定代理服务器端口。 | 最小值: 0 最大值: 65535 | 默认值: 80 如果 UseHandlerProxySettings 为 True,HTTP 发送适配器将忽略此属性。 否则,仅当 UseProxy 为 True 时,HTTP 发送适配器才使用此属性。 如果 UseProxy 为 True,则需要此属性。 | 
| ProxyUsername | xs:string | 指定用于使用代理服务器进行身份验证的用户名。 | 最小长度: 0 最大长度:256 | 默认值: 空 如果 UseHandlerProxySettings 为 True,HTTP 发送适配器将忽略此属性。 否则,仅当 UseProxy 为 True 时,HTTP 发送适配器才使用此属性。 | 
| ProxyPassword | xs:string | 指定使用代理服务器进行身份验证的用户密码。 | 最小长度: 0 最大长度:256 | 默认值: 空 如果 UseHandlerProxySettings 为 True,HTTP 发送适配器将忽略此属性。 否则,仅当 UseProxy 为 True 时,HTTP 发送适配器才使用此属性。 | 
| AuthenticationScheme | xs:string | 要与目标服务器一起使用的身份验证类型。 | 没有 | 有效值: - 匿名 (默认) - 基本 - 消化 - Kerberos | 
| 用户名 | xs:string | 用于对服务器进行身份验证的用户名。 | 最小长度: 0 最大长度:256 | 默认值: 空 如果选择 “基本 身份验证”或 “摘要 式身份验证”,则需要此值。 如果 UseSSO 为 True,HTTP 适配器将忽略此属性的值。 | 
| 密码 | xs:string | 用于向服务器进行身份验证的用户密码。 | 最小长度: 0 最大长度:256 | 默认值: 空 如果选择 “基本 身份验证”或 “摘要 式身份验证”,则需要此值。 如果 UseSSO 为 True,则忽略此属性的值。 | 
| 启用分块编码 | xs:boolean | 指定 HTTP 适配器是否使用分块编码 | 没有 | 默认值: 真 实 | 
| 证书 | xs:string | 客户端 SSL 证书的指纹。 | 最小长度: 0 最大长度: 59 | 默认值: 空 | 
| UseSSO | xs:boolean | 指定是否将 SSO 用于发送端口。 | 没有 | 默认值: 假 | 
| AffiliateApplicationName | xs:string | 要用于 SSO 的关联应用程序的名称。 | 最小长度: 0 最大长度:256 | 默认值: 空 如果 UseSSO 为 True,则为必需。 | 
以下代码显示用于设置这些属性的 XML 字符串:
<CustomProps>  
   <ContentType vt="8">text/xml</ContentType>  
   <RequestTimeout vt="3">0</RequestTimeout>  
   <MaxRedirects vt="3">5</MaxRedirects>  
   <UseHandlerProxySettings vt="8">-1</UseHandlerProxySettings>  
   <UseProxy vt="8">-1</UseProxy>  
   <ProxyName vt="8">sdfsd</ProxyName>  
   <ProxyPort vt="3">80</ProxyPort>  
   <ProxyUsername vt="8">Somename</ProxyUsername>  
   <ProxyPassword vt="8">Somepassword</ProxyPassword>  
   <AuthenticationScheme vt="8">Basic</AuthenticationScheme>  
   <Username vt="8">Somename</Username>  
   <Password vt="8">Somepassword</Password>  
   <EnableChunkedEncoding vt="11">1</EnableChunkedEncoding>  
   <Certificate vt="8">AAAA BBBB CCCC DDDD</Certificate>  
   <UseSSO vt="11">0</UseSSO>  
   <AffiliateApplicationName vt="8">Name</AffiliateApplicationName>  
</CustomProps>  
使用 BizTalk Server 管理控制台配置 HTTP 发送端口
可以在 BizTalk Server 管理控制台中设置 HTTP 发送端口适配器变量。 如果未为发送端口设置属性,将使用 BizTalk Server 管理控制台中设置的默认发送处理程序值。
注释
本主题中所述的配置属性适用于单向和请求响应 HTTP 发送端口。
- 在 BizTalk Server 管理控制台中,创建新的发送端口,或双击现有发送端口对其进行修改。 有关详细信息,请参阅 如何创建发送端口 。 配置所有发送端口选项,并为“常规”选项卡上的“传输”部分中的“类型”选项指定 HTTP。 
- 在“常规”选项卡上的“传输”部分中,单击“类型”旁边的“配置”按钮。 
- 在 “HTTP 传输属性 ”对话框中的“ 常规 ”选项卡上,执行以下作: - 用这个 - 要执行的操作 - 目标 URL - 必填。 指定要发送 HTTP 请求的地址。 包括追加到基 URL 的查询字符串。 
 类型:字符串
 最大长度:256
 有关详细信息,请参阅 “目标 URL 属性的限制”。 注意: 发送端口或接收位置的 URI 不能超过 256 个字符。- 启用分块编码 - 指定使用分块编码。 如果启用此选项,HTTP 适配器将使用最大区块大小为 8 KB 的 HTTP 分块编码。 如果将 HTTP 发送处理程序配置为 使用代理,则会隐式禁用分块编码。 
 类型: 布尔
 默认值: 真- 请求超时(秒) - 指定 HTTP/HTTPS 传输的超时(以秒为单位)。 如果 HTTP 适配器在此时间内未收到响应,服务会记录错误,并根据重试基础结构重新提交消息。 
 如果设置为零(0),BizTalk 消息引擎会根据请求消息大小计算超时。 如果未提供值,则使用处理程序的值。
 类型: 长
 最小值: 0
 最大值: MAX_LONG- 最大重定向数 - 指定所发送邮件允许的最大重定向。 
 默认值: 5
 类型: Int
 最小值: 0
 最大值: 10- 内容类型 - 指定请求消息的内容类型。 
 如果未设置此值,则使用处理程序的值。
 类型:字符串
 最小长度: 0
 最大长度:256
- 在 “HTTP 传输属性 ”对话框中的 “代理(处理程序替代) ”选项卡上,执行以下作: - 用这个 - 要执行的操作 - 使用处理程序的默认代理配置 - 指定发送端口配置必须使用为 HTTP 发送处理程序指定的代理设置。 
 这是默认设置。- 不使用代理 - 指定 HTTP 发送处理程序是否使用代理服务器。 
 如果选择,则此发送端口的 HTTP 发送处理程序不使用代理服务器。- 使用代理 - 指定 HTTP 发送处理程序是否使用代理服务器。 
 如果选择,HTTP 发送处理程序将使用代理服务器。- 服务器 - 指定此发送端口的代理服务器地址。 
 仅当选择了 “使用代理” 时,此属性才需要一个值。
 类型:字符串
 最小长度: 0
 最大长度:256- 端口 - 为此发送端口指定代理服务器端口。 
 仅当选择了 “使用代理” 时,此属性才需要一个值。
 默认值: 80
 类型: 长
 最小值: 0
 最大值: 65535- 用户名 - 指定用于使用代理服务器进行身份验证的用户名。 
 仅当选择了 “使用代理” 时,此属性才需要一个值。
 类型:字符串
 最小长度: 0
 最大长度:256- 密码 - 指定使用代理服务器进行身份验证的用户密码。 
 仅当选择了 “使用代理” 时,此属性才需要一个值。
 类型:字符串
 最小长度: 0
 最大长度:256
- 在 “HTTP 传输属性 ”对话框中的“ 身份验证 ”选项卡上,执行以下作: - 用这个 - 要执行的操作 - 身份验证类型 - 指定要用于目标服务器的身份验证类型。 
 有效选项是:
 - 匿名
 - 基本
 - 消化
 - Kerberos
 默认值: 匿名- 凭据 - 指定要使用的凭据类型。 
 仅当 身份验证类型 为 “基本 ”或“ 摘要”时可用。
 有效选项是:
 - 请勿使用单一登录
 用户名:
 用于向目标服务器进行身份验证的用户名。 如果 身份验证类型 属性为 Anonymous 或 Kerberos,则禁用此选项。 如果选择 了“基本 ”或 “摘要 ”,并且不使用企业单一 Sign-On,则此属性需要一个值。
 最小长度: 0
 最大长度:256
 密码:
 用于向目标服务器进行身份验证的密码。 如果 身份验证类型 属性为 Anonymous 或 Kerberos,则禁用此选项。 如果选择了 “基本 ”或 “摘要 ”,并且不使用“单 Sign-On”,则此属性需要一个值。
 最小长度: 0
 最大长度:256
 - 使用单一登录
 指定是否使用单一 Sign-On 来获取客户端凭据,以用于与目标服务器进行身份验证。
 关联应用程序
 指定要用于单一登录的关联应用程序。
 选择要包含在单一登录中的应用程序。
 最小长度: 0
 最大长度:256- SSL 客户端证书指纹 - 指定用于建立安全套接字层(SSL)连接的客户端证书的指纹。 
 最小长度: 0
 最大长度: 59
- 单击“确定”,然后再次单击“确定”以保存设置。