URL-адрес Azure APIM без API и операций

#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, чтобы моя политика выполнялась и обслуживала запрос.