【发布时间】:2020-09-03 08:57:42
【问题描述】:
我有一个旧的 asmx 网络服务,可以像这样使用邮递员调用
我想通过 API 管理将其公开为 JSON 端点,然后制定转换 XML 的策略,但我不确定如何在策略中设置请求详细信息
我已尝试在下面执行此操作(及其变体),但我总是收到消息错误“requestXML is missing”
<set-body template="liquid">
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soap:Body>
requestXml: "<Request Caller="Harness"><GetEmployerOfferings><EmployerCode>CHCA</EmployerCode></GetEmployerOfferings></Request>"
</soap:Body>
</soap:Envelope>
</set-body>
<set-header name="Content-Type" exists-action="override">
<value>application/x-www-form-urlencoded</value>
</set-header>
如何通过 APIM 策略将其传递给后端服务?
【问题讨论】:
-
您的 JSON 请求正文是什么样的?
-
我现在只是尝试硬编码将 requestXml 传递到后端,但我的 json 请求看起来像这样...{ "getEmployerOfferings": { "requestXml": "sample" } }
-
你的意思是你上面提供的json中的
"sample"是指<Request Caller="Harness"><GetEmployerOfferings><EmployerCode>CHCA</EmployerCode></GetEmployerOfferings></Request>吗?你想用json中的请求体请求apim,但是json的属性requestXml还是xml?
标签: azure azure-api-management