#node.js #request
#node.js #запрос
Вопрос:
Как я могу создать Node.js служба, которая загружает содержимое страницы по запросу и возвращает результаты? Рассмотрим следующий экспресс app.js:
app.get('/service/:url', (req, res) => res.send(downloadPage(req.params.url)));
function getPage(address) {
const request = require('request')
return new Promise((resolve, reject) => {
request(address, (error, response, body) => {
if (error) reject(error);
if (response.statusCode !== 200) {
reject('Invalid status code <' response.statusCode '>');
}
resolve(body);
});
});
}
async function sendRequest(address) {
try {
return await getPage(address)
} catch (error) {
console.error(error);
return 'ERROR';
}
}
function downloadPage(address){
return `enter code here`sendRequest(address)
}
Ответ №1:
Возможное решение:
app.get('/service/:url', (req, res) => downloadPage(req.params.url).then(function (result){
res.send(result)
}).catch(err => res.send(err)));