как в node js сделать curl или file get content

179
12 апреля 2018, 12:49

как в node js сделать curl или file get content использую фреймворк express что б выполнить запрос к api яндекс диска

var request = require('request'); 
 
var options = { 
  url: 'https://api.github.com/repos/request/request', 
  headers: { 
    'User-Agent': 'request' 
  } 
}; 
 
function callback(error, response, body) { 
  if (!error && response.statusCode == 200) { 
    var info = JSON.parse(body); 
    console.log(info.stargazers_count + " Stars"); 
    console.log(info.forks_count + " Forks"); 
  } 
} 
 
request(options, callback);

var request = require('request'); 
request('http://www.google.com', function (error, response, body) { 
  console.log('error:', error); // Print the error if one occurred 
  console.log('statusCode:', response && response.statusCode); // Print the response status code if a response was received 
  console.log('body:', body); // Print the HTML for the Google homepage. 
});

Answer 1

!не проверял

package/axios

https://www.npmjs.com/package/axios
https://github.com/axios/axios

axios - аналог fetch

https://disjoint.ca/til/2017/09/20/how-to-download-a-binary-file-using-axios/

   import axios from 'axios';
   import fs from 'fs';
   // ...
   return axios.request({
     responseType: 'arraybuffer',
     url: 'http://www.example.com/file.mp3',
     method: 'get',
     headers: {
       'Content-Type': 'audio/mpeg',
     },
   }).then((result) => {
     const outputFilename = '/tmp/file.mp3';
     fs.writeFileSync(outputFilename,result.data);
     return outputFilename;
   });

package/curl

https://www.npmjs.com/package/curl

Functions

curl.get(url, options, function(err, response, body) {});
curl.post(url, body, options, function(err, response, body) {});
curl.getJSON(url, options, function(err, response, data){});
curl.postJSON(url, data, options, function(err, response, data){});
Answer 2

вот пример работы с API Яндекс Диск

https://github.com/Kolyaj/yandex-disk это может быть точкой старта для дальнейшего анализа и разработки собственного решения.

Сам по себе node/expess - это уже http-server и можно отправлять запросы используя API Node.js или использовать библиотеки/модули

  • axios
  • request
  • и другие например
READ ALSO
Как создать конструктор внутри объекта?

Как создать конструктор внутри объекта?

Существует объект который содержит объектыВ этом объекте есть метод который является конструктором при вызове которого просто добавляет...

173
JS - Копирование в буфер обмена

JS - Копирование в буфер обмена

Как скопировать данные из атрибута data-s="" в буфер обмена?

153
Почему Heroku не работает стабильно?

Почему Heroku не работает стабильно?

Я установил телеграм бот на Heroku, но он работает не стабильно, 5 минут работает 20-30 минут зависаетНо когда открыта страница Heroku с проектом всё...

183
Заполнить свойство через цикл

Заполнить свойство через цикл

Получаю массив со значениямиНужно все значения вывести на график

145