Loading lib/rp.js +11 −22 Original line number Original line Diff line number Diff line Loading @@ -22,6 +22,10 @@ function rp(options) { } } } } c.method = c.method || 'GET'; c.method = c.method || 'GET'; return buildPromise(c); } function buildPromise (c) { return new Promise(function (resolve, reject) { return new Promise(function (resolve, reject) { request(c, function (error, response, body) { request(c, function (error, response, body) { if (error) { if (error) { Loading Loading @@ -75,29 +79,14 @@ Object.keys(request).filter(function(key){ Object.keys(request).filter(function(key){ Object.keys(request).filter(function(key){ return typeof(request[key]) === "function" && wrapMethods.indexOf(key) +1; return typeof(request[key]) === "function" && wrapMethods.indexOf(key) +1; }).forEach(function(key){ }).forEach(function(key){ rp[key] = function(){ rp[key] = defaultHttpMethod; }); function defaultHttpMethod(){ var args = Array.prototype.slice.call(arguments, 0); var args = Array.prototype.slice.call(arguments, 0); return new Promise(function (resolve, reject) { var method = methodNameLookup[key]; var params = request.initParams.apply(request, args); var params = request.initParams.apply(request, args); params.options.method = method; params.method = methodNameLookup[key]; request(params, function (error, response, body) { return buildPromise(params); if (error) { reject(error); } else if (statusCodes[method].indexOf(response.statusCode) === -1) { reject(response); } else { if (params.transform && typeof params.transform === 'function') { resolve(params.transform(body)); } else { resolve(body); } } }); }); } } }); module.exports = rp; module.exports = rp; Loading
lib/rp.js +11 −22 Original line number Original line Diff line number Diff line Loading @@ -22,6 +22,10 @@ function rp(options) { } } } } c.method = c.method || 'GET'; c.method = c.method || 'GET'; return buildPromise(c); } function buildPromise (c) { return new Promise(function (resolve, reject) { return new Promise(function (resolve, reject) { request(c, function (error, response, body) { request(c, function (error, response, body) { if (error) { if (error) { Loading Loading @@ -75,29 +79,14 @@ Object.keys(request).filter(function(key){ Object.keys(request).filter(function(key){ Object.keys(request).filter(function(key){ return typeof(request[key]) === "function" && wrapMethods.indexOf(key) +1; return typeof(request[key]) === "function" && wrapMethods.indexOf(key) +1; }).forEach(function(key){ }).forEach(function(key){ rp[key] = function(){ rp[key] = defaultHttpMethod; }); function defaultHttpMethod(){ var args = Array.prototype.slice.call(arguments, 0); var args = Array.prototype.slice.call(arguments, 0); return new Promise(function (resolve, reject) { var method = methodNameLookup[key]; var params = request.initParams.apply(request, args); var params = request.initParams.apply(request, args); params.options.method = method; params.method = methodNameLookup[key]; request(params, function (error, response, body) { return buildPromise(params); if (error) { reject(error); } else if (statusCodes[method].indexOf(response.statusCode) === -1) { reject(response); } else { if (params.transform && typeof params.transform === 'function') { resolve(params.transform(body)); } else { resolve(body); } } }); }); } } }); module.exports = rp; module.exports = rp;