Направьте приложение функции Azure, чтобы оно принимало только приложение/json

#azure #azure-functions #postman #azure-function-app #azure-functions-runtime

Вопрос:

Направьте приложение функции Azure, чтобы оно принимало только приложение/json

Привет, я использую функцию Azure и тестирую ее через Postman.

Мое требование заключается в том, что когда мы передаем тип контента, отличный от «application/json», я ожидаю, что моя функция Azure вернет сообщение «Недопустимый тип контента».

Вышеуказанной потребности я могу достичь с помощью изменений кода, как показано ниже.

если(HttpRequest.Заголовки[«Тип содержимого»] != «приложение/json») — затем повторите «Недопустимый тип содержимого».

Но возможно ли это и есть ли какой-либо способ добиться того же с помощью параметров конфигурации (т. е. host.json) в приложении функций Azure ?

Кроме того, я попытался добавить следующее в разделе Пользовательские заголовки в файле host.json. Но это не сработало.

«Принять»: «заявка/json»

«Управление доступом-Открытые заголовки»: «приложение/json»

заранее спасибо…

Комментарии:

1. Для функции V1 мы задаем тип webHookType как genericJson в function.json,см.: docs.microsoft.com/en-us/azure/azure-functions/…

2. Привет, Стэнли, спасибо за твой ответ. Согласно документации, webHookType применим к функции V1. (т. е. Поддерживается только для среды выполнения версии 1.x). В нашем случае мы используем версию 2.x, поэтому я все еще изучаю доступные варианты для достижения этой цели.

Ответ №1:

Но возможно ли это и есть ли какой-либо способ добиться того же с помощью параметров конфигурации (т. е. host.json) в приложении функций Azure ?

Нет, azure function v2 host.json не имеет этого параметра.

И атрибут Webhooktype был удален. Теперь он не поддерживается в azure function v2: