Управление API Azure - сопоставление запросов с различными кодами ответов - PullRequest
0 голосов
/ 03 декабря 2018

Я добавил внешний API для управления API.API всегда возвращает 200 ответов даже для плохих запросов.У ответа есть свойство с именем status, которое говорит, что ответ в порядке или это неверный запрос

Могу ли я настроить управление API для возврата кода ответа на основе свойства «status» в этом ответе?Так как мне это сделать?

1 Ответ

0 голосов
/ 03 декабря 2018

Вы можете использовать политику set-status (для установки кода статуса HTTP) вместе с , выбрать политику (чтобы проверить значение вашего свойства).Проверьте документация о состоянии установки для получения подробной информации.

В следующем примере из документации Microsoft показано, как вернуть ответ 401, если токен авторизации недействителен.

<choose>
  <when condition="@((bool)((IResponse)context.Variables["tokenstate"]).Body.As<JObject>()["active"] == false)">
    <return-response response-variable-name="existing response variable">
      <set-status code="401" reason="Unauthorized" />
      <set-header name="WWW-Authenticate" exists-action="override">
        <value>Bearer error="invalid_token"</value>
      </set-header>
    </return-response>
  </when>
</choose>
...