我熟悉异步执行的强度,并且知道如何使用回调。不过,出于几个原因,我希望以同步方式执行部分代码。例如,http.get()
和child_process.exec()
。
请注意,上面提到的两个示例都必须与事件侦听器 ( on(...)
) 一起使用,以便收集结果和处理错误。
任何人都可以阐明这个问题的机会。一个小片段会很棒(例如,http.get()
与其均匀处理同步)
谢谢。
更新:我可以用来httpsync
生成请求并捕获响应。响应本身是一个buffer
. 我正在使用httysync
检索少量图像,但是在将缓冲区写入文件(使用fs.writeFile
)时,图像无法打开。我想这与文件的某些转换有关。因此,如果有人可以帮助解决这个问题,那么它就解决了这个问题。
附上一个片段
var httpsync = require("httpsync");
var fs = require("fs");
var req = httpsync.get({ url : "http://www.tunisia-live.net/wp-content/uploads/2011/12/christmas-tree-wallpaper1024x768.jpg" });
var res = req.end();
fs.writeFile("out.jpg", res.data, function(err) {
if (err)
console.log(err);
});