https://github.com/danwrong/restler http://nodejs.org/
为了下载文件,我在服务器端脚本(而不是来自客户端 Web 浏览器)中使用来自 nodejs 的 restler。
我可以在下载完成时使用异步方式触发事件,如下所示:
rest = require('./restler');
rest.get('http://google.com').on('complete', function(result) {
if (result instanceof Error) {
sys.puts('Error: ' + result.message);
this.retry(5000); // try again after 5 sec
} else {
sys.puts(result);
}
});
但我这次更喜欢使用同步方式。
我怎样才能调用它并阻止/等到我得到响应?
以及之后如何获取数据或错误
var req = rest.get('http://twaud.io/api/v1/users/danwrong.json');
// how to block/wait here until file is downloaded
if (req.response instanceof Error) { // this does not worn neither
...
} else {
...
}