【发布时间】:2020-05-25 13:18:15
【问题描述】:
我在 Azure 上托管了一个 API,并且我已经开始使用 Azure API 管理。我的 API 端点之一是 GET,它需要将 JSON 形式的主体传递给端点。在我的邮递员上,我能够点击实际的 API(托管在 Azure 上)并发送正文,我能够得到一些结果。但是当我尝试在 azure api management 上点击 api 时,我收到以下异常,尽管我正在发送请求正文:
{
"errors": {
"": [
"A non-empty request body is required."
]
},
"type": "https://tools.ietf.org/html/rfcXXXX#section-6.5.1",
"title": "One or more validation errors occurred.",
"status": 400,
"traceId": "XXXXXXXXXXXXXXXXXXXXXXXXXXX"
}
我是否缺少有关 Azure Api 管理的一些配置?我确实查找了设置的策略,并且在入站时使用了以下内容,但这仍然无法正常工作
<set-header name="Content-Type" exists-action="override">
<value>application/json</value>
</set-header>
<set-body template="liquid">{{body.json}}"}</set-body>
任何有关我如何解决此问题的见解将不胜感激。提前致谢。
【问题讨论】:
-
加
<set-body>@{ JObject inBody = context.Request.Body.As<JObject>(); return inBody.ToString(); }</set-body>看看能不能拿到trace中的body内容。
标签: azure api azure-api-management