Как сделать HTTP запрос в JavaScript?
Всем привет! Подскажите, пожалуйста, как правильно выполнить HTTP-запрос на Node.js (версия 18).
Я пишу небольшой скрипт для парсинга данных с публичного API. Мне нужно отправить GET-запрос и получить JSON-ответ. Пробовал использовать встроенный модуль http, но столкнулся с проблемой: данные приходят частями, и приходится собирать их вручную через события data и end. Это кажется неудобным и громоздким.
const http = require('http');
http.get('http://example.com/api/data', (res) => {
let data = '';
res.on('data', (chunk) => { data += chunk; });
res.on('end', () => {
console.log(JSON.parse(data));
});
});Слышал, что есть библиотеки вроде axios или node-fetch, но хотелось бы понять, какой подход сейчас считается стандартным в современном Node.js? Нужно ли обязательно ставить сторонние пакеты, или есть более элегантное решение на чистом Node?
Ожидаю получить пример кода, который делает GET-запрос, обрабатывает ошибки (например, таймаут или неверный URL) и возвращает JSON. Также интересует, как правильно обрабатывать POST-запросы с телом в формате JSON.
Заранее спасибо за помощь!