如何使用回车的BizTalk预处理绑定文件

时间:2019-02-01 06:42:22

标签: xml biztalk biztalk-2010 btdf

我有一个用于BizTalk的绑定XML文件,端口为WCF-WebHttp,该端口主要用于调用其余服务。

这类端口在您通常放置的HttpHeaders字段中:

Authorization: Basic ThenTHeToken
ContentType: application/json

在使用BizTalk部署框架进行检查并预处理绑定时,

这是生成的XML,您可以在承载令牌之后看到实际上有一个换行符

<TransportTypeData>
          &lt;CustomProps&gt;&lt;ServiceCertificate vt="8" /&gt;&lt;HttpMethodAndUrl vt="8"&gt;POST&lt;/HttpMethodAndUrl&gt;&lt;MaxReceivedMessageSize vt="3"&gt;65536&lt;/MaxReceivedMessageSize&gt;&lt;ClientCertificate vt="8" /&gt;&lt;ProxyUserName vt="8" /&gt;&lt;UseAcsAuthentication vt="11"&gt;0&lt;/UseAcsAuthentication&gt;&lt;SuppressMessageBodyForHttpVerbs vt="8" /&gt;&lt;VariablePropertyMapping vt="8"&gt;&amp;lt;BtsVariablePropertyMapping xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" /&amp;gt;&lt;/VariablePropertyMapping&gt;&lt;SecurityMode vt="8"&gt;Transport&lt;/SecurityMode&gt;&lt;ProxyToUse vt="8"&gt;Default&lt;/ProxyToUse&gt;&lt;EndpointBehaviorConfiguration vt="8"&gt;&amp;lt;behavior name="EndpointBehavior" /&amp;gt;&lt;/EndpointBehaviorConfiguration&gt;&lt;TransportClientCredentialType vt="8"&gt;None&lt;/TransportClientCredentialType&gt;&lt;OpenTimeout vt="8"&gt;00:01:00&lt;/OpenTimeout&gt;&lt;UseSSO vt="11"&gt;0&lt;/UseSSO&gt;&lt;UseSasAuthentication vt="11"&gt;0&lt;/UseSasAuthentication&gt;&lt;CloseTimeout vt="8"&gt;00:01:00&lt;/CloseTimeout&gt;&lt;SendTimeout vt="8"&gt;00:01:00&lt;/SendTimeout&gt;&lt;HttpHeaders vt="8"&gt;Authorization: Basic bearertoken=
          Content-Type: application/json&lt;/HttpHeaders&gt;&lt;/CustomProps&gt;
        </TransportTypeData>

但是,当将绑定导入BizTalk应用程序时,然后在输出标头上,换行符丢失,并且BizTalk将授权和内容类型放在同一行上,然后失败。

我无法手动解决此问题,因为在其他环境中,部署是通过Azure DevOps自动完成的。

任何想法如何添加该换行符吗?

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,并通过在标头之间添加以下分隔符来解决该问题: 空格+&#x a; +空白 就您而言:

授权:Basic ThenTHeToken&#x a; ContentType:application / json

注意:我在字符之间添加了空格,以避免在此处进行解码