Как я могу создать API со своим пользовательским кодом в Azure? - PullRequest
0 голосов
/ 08 марта 2019

Могу ли я создать API, который имеет определение суммы двух чисел и возвращает мне вывод.Я хочу написать всю логику в самом Azure Web API Management.Есть ли какие-либо положения или мне нужно создать его на своем компьютере и импортировать в Azure Web API Management?

Можно ли создать его в Web API в самом Azure, а не импортировать?

1 Ответ

1 голос
/ 08 марта 2019

Есть два способа сделать это. APIM поддерживает выражения политики: https://docs.microsoft.com/en-us/azure/api-management/api-management-policy-expressions Это позволяет подключать произвольный код к конвейеру обработки запросов. Вы можете проверить примеры политики здесь: https://docs.microsoft.com/en-us/azure/api-management/policy-samples, чтобы увидеть это в действии. В сочетании с другими политиками это позволяет вам многое. Если мы предполагаем, что ваша операция «сложения» имеет шаблон URI / add? A = {a} & b = {b}, то вы можете суммировать и возвращать результат с помощью одной простой политики:

<return-response>
    <set-status code="200" reason="OK" />
    <set-body>@{
        var a = int.Parse(context.Request.Url.Query.GetValueOrDefault("a", "0"));
        var b = int.Parse(context.Request.Url.Query.GetValueOrDefault("b", "0"));
        return (a + b).ToString();
    }</set-body>
</return-response>

Как вы можете видеть, это довольно обычный код C #, но он ограничен в том, что вы можете делать и какие типы вы можете использовать (см. Первую ссылку). Если вы не можете заставить его работать в рамках этих ограничений, лучше всего переместить пользовательскую логику за пределы APIM, например, в функции Azure.

...