Когда я получаю функцию Azure, я получаю 500 кодов состояния - PullRequest
0 голосов
/ 25 апреля 2018

Я пытаюсь сделать запрос Get для функции Azure (v1), которая использует NReco HtmlToImageConverter, но по какой-то причине я получаю код состояния 500 со следующим сообщением

Нет MediaTypeFormatter доступнодля чтения объекта типа «Объект» из содержимого с типом носителя «application / octet-stream».

РЕДАКТИРОВАТЬ: я не думаю, что проблема в том, что описано здесь

Я публикую буквально пустую функцию V1 в Azure, и она не работает.

 [FunctionName("Function1")]
    public static async Task<HttpResponseMessage> Run([HttpTrigger(AuthorizationLevel.Anonymous, "get", "post", Route = null)]HttpRequestMessage req, TraceWriter log)
    {
        log.Info("C# HTTP trigger function processed a request.");

        // parse query parameter
        string name = req.GetQueryNameValuePairs()
            .FirstOrDefault(q => string.Compare(q.Key, "name", true) == 0)
            .Value;

        // Get request body
        dynamic data = await req.Content.ReadAsAsync<object>();

        // Set name to query string or body data
        name = name ?? data?.name;

        return name == null
            ? req.CreateResponse(HttpStatusCode.BadRequest, "Please pass a name on the query string or in the request body")
            : req.CreateResponse(HttpStatusCode.OK, "Hello " + name);
    }

Я не знаю, связана ли она, но при публикации я получаю следующий диалог (к которомуЯ в настоящее время отвечаю с Нет)

enter image description here

1 Ответ

0 голосов
/ 26 апреля 2018

В HTTP-запросе вам нужно установить Content-Type на:

contentType: 'application/json; charset=utf-8'.

Версия функций на хосте Azure не соответствует локальной версии.

Кажется, что ваша функция времени выполнения в локальной версии v1, но функция на портале может быть "бета", поэтому их версии не совпадают.

Таким образом, вы можете создать новую функцию Azure на портале, и ее версия по умолчанию - "~ 1". Проверьте среду выполнения на портале в Настройки приложения функции , как показано ниже: enter image description here

Затем опубликуйте локальную функцию в Azure, и она будет работать нормально.

...