使用请求获取Node.js中的二进制内容

时间:2013-02-13 13:46:20

标签: javascript node.js request binaryfiles requestjs

我试图使用request GET二进制数据,并且有类似的内容:

var requestSettings = {
    method: 'GET',
    url: url,
};
request(requestSettings, function(error, response, body) {
    // Use body as a binary Buffer
}

但是body总是与预期的几个字节不同。经过进一步调查后,我发现request假定body为字符串,并替换了所有非unicode字节。

我尝试添加

encoding: 'binary'

requestSettings,但没有帮助。

如何获取二进制数据?

2 个答案:

答案 0 :(得分:263)

好的,经过大量的挖掘,我发现requestSettings应该有:

encoding: null

然后body将是Buffer类型,而不是默认值,即字符串。

答案 1 :(得分:0)

被接受的答案不能解决我的问题。我以某种方式认为int vertex_count; cin >> vertex_count; vector <vector <int>> tab(vertex_count); 有用。