Как получить доступ к параметру маршрута в Azure API Management - PullRequest
1 голос
/ 05 марта 2020

Параметр строки запроса

Я видел множество примеров чтения параметров строки запроса.

Например, возьмите следующий URI:

/api/Profile?id={accountId}

accountId можно прочитать в политике xml, используя следующий синтаксис:

context.Request.Url.Query["accountId"]

Параметр маршрута

Но что, если мой URI структурирован как:

/api/profiles/{accountId}

Как мне прочитать accountId в политике xml, когда параметр отсутствует в строке запроса?

1 Ответ

1 голос
/ 05 марта 2020

Используя приведенный выше пример, я могу прочитать accountId по следующему синтаксису:

context.Request.MatchedParameters["accountId"]

Например, я мог бы присвоить его переменной для использования в другом месте политики APIM file:

<set-variable name="account-id" value="@(context.Request.MatchedParameters["accountId"])" />

Нет большого количества документации по этому поводу, но, к счастью, есть по крайней мере некоторые упоминания о переменной Context в документах. microsoft.com.

...