В Node.js метод «fetch» недоступен по умолчанию, как в браузерах. Однако вы можете добиться аналогичной функциональности, используя внешние библиотеки, такие как «node-fetch» или «axios». Эти библиотеки предоставляют методы для выполнения HTTP-запросов из среды Node.js.
Вот несколько методов, которые можно использовать для выполнения HTTP-запросов в Node.js:
- node-fetch: это популярная библиотека, которая добавляет API-интерфейс выборки из браузера в Node.js. Он позволяет вам отправлять HTTP-запросы и обрабатывать ответы простым и понятным способом.
const fetch = require('node-fetch');
fetch('https://api.example.com/data')
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error(error));
- axios: Axios — это широко используемая клиентская библиотека HTTP, которая работает как в браузерах, так и в Node.js. Он предоставляет богатый набор функций и возможностей для выполнения HTTP-запросов.
const axios = require('axios');
axios.get('https://api.example.com/data')
.then(response => console.log(response.data))
.catch(error => console.error(error));
- http: Node.js также предоставляет встроенный модуль http, который позволяет выполнять HTTP-запросы без каких-либо внешних библиотек. Однако для этого требуется более ручная обработка объектов запроса и ответа.
const http = require('http');
const options = {
hostname: 'api.example.com',
path: '/data',
method: 'GET'
};
const req = http.request(options, (res) => {
let data = '';
res.on('data', (chunk) => {
data += chunk;
});
res.on('end', () => {
console.log(JSON.parse(data));
});
});
req.on('error', (error) => {
console.error(error);
});
req.end();
Это всего лишь несколько примеров того, как можно выполнять HTTP-запросы в Node.js. В зависимости от ваших конкретных требований вы можете выбрать тот, который лучше всего соответствует вашим потребностям.