在asynchronous系列中存储api请求

我有一个模块,调整图像, imageResizer ,使用graphicsmagick和另一个模块, apiCaller ,它有两个函数,一个用于get请求,另一个用于post请求,使用request模块。 在imageResizer我调用apiCaller.get ,一个触发图像resize的函数,然后调用,如果get请求成功,然后如果这样就可以了apiCaller.post被调用。

这是这样的事情:

 exports.imageResizer = function (arguments) { async.series([ function(callback) { apiCaller.get(callback); }, function(callback) { gm("filepath") .resize("sizes") .write("destinationPath", function (err) { if(err) // do something }, callback()); }, function(callback) { apiCallerPost(arguments) } ]); } 

 apiCaller = {}; apiCaller.get = function (arguments, callback) { // setup variables and stuff function _callback (error, response, body) { if (error) {// do somethind} else {callback(null, body} } request.get(options, _callback); } module.exports = apiCaller; 

我的问题是,哪个testing是最好的? 将apiCaller.getapiCaller.post是最好的办法? request模块本身呢? 这也需要被扼杀吗?

我正在使用sinonchaimochaproxyquire