У меня есть сценарий, когда концентратор событий получает данные, и функция Azure запускается для извлечения данных, а функция Azure должна сделать запрос POST с этими извлеченными данными в качестве полезной нагрузки и получить ответ от сервера. Я использую HMPP модуль Axios, основанный на обещаниях, так как время отклика может варьироваться в зависимости от полезной нагрузки. (Функции Azure находятся в NodeJS); Проблема в том, что запросы на отправку сообщений не проходят
Пробовал асинхронно - ждать вызова для запроса Post, все еще не работает.
вот код
module.exports = async function (context, eventHubMessages) {
context.log(`JavaScript eventhub trigger function called for message array ${eventHubMessages}`);
var data = {};
eventHubMessages.forEach((message, index) => {
context.log(`Processed message ${message}`);
data = message;
});
const axios = require('axios');
module.exports=async function(context,req){
let response= await axios.post('http:example.com/post',
{
data
}
)
.then((res) => {
context.log(`statusCode: ${res.statusCode}`)
context.log(res)
})
.catch((error) => {
context.error(error)
})
context.log(`Output content: ${res}`);
}
};
Вот функция. Json
{
"bindings": [
{
"type": "eventHubTrigger",
"name": "eventHubMessages",
"direction": "in",
"eventHubName": "name-eventhub",
"connection": "eventhub-key",
"cardinality": "many",
"consumerGroup": "$Default"
},
{
"type": "http",
"name": "$return",
"direction": "out"
}
]
}
Ожидаемый результат:
Processed message [object]
statusCode : 200
Output content: response // print response in here
Фактическая выработка:
Processed message [object]
На выходе не отображается код состояния или ответ.