Node js http/https request
function networkRequest(options) {
const config = options.config;
const protocol = (config.port === 443 ? https : http);
return new Promise((resolve, reject) => {
const request = protocol.request(config, (response) => {
response.on('data', (d) => {
resolve({promiseresult: d.toString('utf8')});
});
response.on('error', (d) => {
reject({promiseresult: d.toString('utf8')});
});
});
request.write(options.postdata)
request.end();
});
}
Использую такую функцию для запроса. Однако, когда сайт не присылает никакие данные, в промис никакой результат не передается, и все приложение падает.
Как это решить?
Ответы (1 шт):
Автор решения: Sergey Petrov
→ Ссылка
import axios from 'axios';
async function networkRequest(options) {
const config = options.config;
const protocol = (config.port === 443 ? https : http);
try {
const request = await axios.get(`${protokol}/config`);
return response.data;
} catch (e) {
console.log(e);
}
}
Однако, остается загадкой, что содержится в options, какая схема данных приходит из запроса и как вы в дальнейшем эти данные обрабатываете.