Я хочу, чтобы существующее приложение (которое я не контролирую) отправляло информацию в функцию Azure.
Приложение сначала отправляет запрос HTTP OPTIONS, а затем регулярно отправляет сообщения HTTP POST.
Проблема, с которой я столкнулся, заключается в том, что приложение ожидает заголовок «Allow: POST, OPTIONS» вответ от функции Azure на запрос OPTIONS.Если заголовок отсутствует, он не будет продолжаться (вместо этого выдается ошибка: «POST не разрешен»)
При попытке установить заголовок в функциях Azure я получаю следующее сообщение об ошибке
System.Net.Http: Misused header name. Make sure request headers are used with HttpRequestMessage, response headers with HttpResponseMessage, and content headers with HttpContent objects.
Я включил CORS для всех местоположений и разрешил все методы в конфигурации.
module.exports = function (context, req)
{
//context.log('JavaScript HTTP trigger function processed a request.');
if (req.method == "OPTIONS")
{
context.res =
{
body: "",
headers:
{
//"Access-Control-Allow-Methods" : "POST,OPTIONS",
"allow" : "POST,OPTIONS"
},
status: 200,
};
}
context.done();
}
В спецификации сказано, что для ответа 405 должен быть установлен заголовок Allow.Если заголовок пуст, ничего не разрешено.Однако логика не определена для случая, когда заголовок отсутствует вообще.
Существует ли метод, с помощью которого я могу отправить этот заголовок в ответ на HTTP-ОПЦИИ?