代码之家  ›  专栏  ›  技术社区  ›  jackfrost5234

具有Biztalk WCF WebHttp发送端口的多个URL参数

  •  1
  • jackfrost5234  · 技术社区  · 7 年前

    我正在Biztalk中使用RESTful API。我需要针对以下端点发表帖子:

    http://mycompany.sb01.com/atwork/api/v5.0

    我已经通过Postman对我的API Url进行了以下测试(有效):

    http://mycompany.sb01.com/atwork/api/v5.0/UID?name=bob&id=028153

    由于帖子中有多个URL参数,我在将其转换为BizTalk应用程序中的发送端口时遇到问题。当我在Biztalk管理控制台中具有以下绑定时,我会得到一个系统。ArgumentException,它告诉我“=”是意外的标记,而预期的标记是“;”。

    <BtsHttpUrlMapping>
    <Operation Name="ID Insert" Method="POST" Url= "/UID?name={name}&id={id}"/>
    </BtsHttpUrlMapping>
    

    我尝试了以下msdn文档: https://msdn.microsoft.com/en-us/library/jj572853.aspx

    但它只适用于一个URL参数,而不适用于多个URL参数。如果我删除:

    &id={id}
    

    从我的装订来看,它毫无例外地通过了。Biztalk如何处理多个URL参数?

    2 回复  |  直到 7 年前
        1
  •  6
  •   Dijkgraaf José Ignacio Gutiérrez Guzmán    7 年前

    你必须逃跑 & 在查询字符串中 &amp;

    确实如此

    <BtsHttpUrlMapping>
        <Operation Name="ID Insert" Method="POST" Url= "/UID?name={name}&amp;id={id}"/>
    </BtsHttpUrlMapping>
    
        2
  •  0
  •   Dijkgraaf José Ignacio Gutiérrez Guzmán    6 年前

    您需要转义和号(&)收件人(&A);
    中的Url 活动 标签应如下所示

    Url= "/UID?name={name}&amp;id={id}"