Skip to content

Commit

Permalink
Merge pull request #14 from Hypnosphi/remove-request
Browse files Browse the repository at this point in the history
Replace request with node-fetch
  • Loading branch information
doowb authored Aug 28, 2020
2 parents 5bc3fde + 98281df commit 45e7325
Show file tree
Hide file tree
Showing 5 changed files with 31 additions and 33 deletions.
20 changes: 7 additions & 13 deletions lib/list.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
'use strict';

const url = require('url');
const fetch = require('node-fetch');
const utils = require('./utils');
const config = require('./config');

Expand Down Expand Up @@ -38,19 +39,12 @@ class List {
* @api public
*/

query(params = {}) {
return new Promise(async(resolve, reject) => {
utils.request(this.url(params), (err, response, body) => {
if (err) return reject(err);
var res = {};
try {
res = JSON.parse(body);
return resolve(res);
} catch (err) {
return reject(err);
}
});
});
async query(params = {}) {
const response = await fetch(this.url(params));
if (!response.ok) {
throw new Error(response.statusText);
}
return response.json();
}

/**
Expand Down
19 changes: 7 additions & 12 deletions lib/registry.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
'use strict';

const fetch = require('node-fetch');
const utils = require('./utils');
const config = require('./config');

Expand Down Expand Up @@ -32,18 +33,12 @@ class Registry {
* @api public
*/

get(name) {
return new Promise((resolve, reject) => {
utils.request.get(this.url(name), (err, res, body) => {
if (err) return reject(err);
try {
let data = JSON.parse(body);
resolve(data);
} catch (err) {
reject(err);
}
});
});
async get(name) {
const response = await fetch(this.url(name));
if (!response.ok) {
throw new Error(response.statusText);
}
return response.json();
}

/**
Expand Down
1 change: 0 additions & 1 deletion lib/utils.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ define('clone', () => require('clone-deep'));
define('JSONStream', () => require('JSONStream'));
define('moment', () => require('moment'));
define('paged', () => require('paged-request'));
define('request', () => require('request'));
define('stats', () => require('download-stats'));

utils.arrayify = val => val ? (Array.isArray(val) ? val : [val]) : [];
20 changes: 15 additions & 5 deletions lib/view.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
'use strict';

const url = require('url');
const fetch = require('node-fetch');
const utils = require('./utils');
const config = require('./config');

Expand Down Expand Up @@ -40,12 +41,15 @@ class View {
* @api public
*/

query(params = {}) {
async query(params = {}) {
const response = await fetch(this.url(params));
if (!response.ok) {
throw new Error(response.statusText);
}
return new Promise((resolve, reject) => {
let items = [];
let header = {};
utils.request(this.url(params))
.once('error', reject)
response.body
.pipe(utils.JSONStream.parse('rows.*'))
.on('header', (data) => {
header = data;
Expand Down Expand Up @@ -83,8 +87,14 @@ class View {
*/

stream(params = {}) {
return utils.request(this.url(params))
.pipe(utils.JSONStream.parse('rows.*'));
const stream = utils.JSONStream.parse('rows.*');
fetch(this.url(params)).then(response => {
if (!response.ok) {
throw new Error(response.statusText);
}
response.body.pipe(stream)
}).catch(e => stream.emit('error', e))
return stream;
}

/**
Expand Down
4 changes: 2 additions & 2 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@
"clone-deep": "^4.0.1",
"download-stats": "^0.3.4",
"moment": "^2.24.0",
"paged-request": "^2.0.1",
"request": "^2.88.0"
"node-fetch": "^2.6.0",
"paged-request": "^2.0.1"
}
}

0 comments on commit 45e7325

Please sign in to comment.