Azure Basic HTTP-триггер NodeJS асинхронный - PullRequest
0 голосов
/ 08 марта 2019

Почему это не отправляет мне обратно какие-либо данные.Я использую почтальон и не посылаю никаких результатов.Какой-то тип асинхронной проблемы?Может быть, я не правильно сконфигурировал этот триггер Azure HTTP functions.json?

Когда я передаю локальный объект для ответа, это нормально.Только когда я пытаюсь использовать асинхронный сбой.В настоящее время я тестирую на своем локальном компьютере разработчика, прежде чем развернуть функцию в облаке Azure.

functions.json

{
  "disabled": false,
  "bindings": [
    {
      "authLevel": "function",
      "type": "httpTrigger",
      "direction": "in",
      "name": "req",
      "methods": [
        "get"
      ]
    },
    {
      "type": "http",
      "direction": "out",
      "name": "res"
    }
  ]
}

index.js

const axios = require('axios');

module.exports = async function (context, req) {
    axios.get('https://jsonplaceholder.typicode.com/todos/1').then(response=>{
        console.log(response.data) // This is coming thru fine.
        context.res = {
            status: 200,
            body: response.data
        }
        context.done();
    }).catch(error=>{
        context.res = {
            status: 400,
            body: error
        }
        context.done();
    })
}

1 Ответ

0 голосов
/ 08 марта 2019

Я искренне верю, что код, который у меня был до того, работает, но более сжатая версия, которую я предоставил ниже, похоже, делает эту работу, однако, если кто-то столкнется с этой проблемой, вы можете попытаться перезапустить локальный сервер разработки, и это может решить проблему для тебя

решаемые

const axios = require(‘axios’);

module.exports = async function (context, req) {
    let d = await axios.get(‘https://jsonplaceholder.typicode.com/todos/1’);
    context.res = {
        status: 200,
        body: d.data
    }
    context.done()
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...