#azure-api-management
#azure-api-management
Вопрос:
Я хочу обслуживать запрос только по политике APIM, требуется ли для этого API и operation? например https://myapim/myapi/myoperation
Я буду обслуживать этот запрос из самой политики, вызывая несколько внешних API, нужно ли мне создавать myapi API и myopration как пустую операцию? или есть ли способ справиться с этим? в настоящее время я получаю 404 от APIM, прежде чем перейти к коду политики.
Ответ №1:
Когда вы создаете api в APIM, он попросит вас ввести свой внутренний URL-адрес, как показано на скриншоте ниже.
А затем, когда вы создаете операцию, если вы вводите /myoperation/
в поле «URL«, как показано ниже:
Он будет запрашивать https://your-backend-url/myoperation
в серверной части, но ваш серверный URL- https://your-backend-url
адрес. Таким образом, вы можете получить ошибку 404. Чтобы решить эту проблему, вы можете просто ввести /
в поле «URL» при создании операции.
Комментарии:
1. Спасибо @hurry спасибо, но хотел бы знать, может ли APIM без операции обслуживать запрос или нет по политике. Я предполагаю, что APIM сначала проверяет URL-адрес в route где-нибудь, а затем переходит к политике
2. @Himanshu я не уверен. Вы можете попробовать нажать «Все операции» и добавить политику, но не нажимать на конкретную операцию, а затем добавлять политику. Вот так .
3. Политика находится на уровне продукта, который является общим для всех API в этом продукте. Спасибо, это сделано сейчас
Ответ №2:
Мне пришлось создать фиктивную операцию в моем API, чтобы моя политика выполнялась и обслуживала запрос.