Node.js nodejs处理阵列缓冲区
假设我发出一个多部分、应用程序/八位字节流请求,响应类型为“arraybuffer”……假设我在nodejs中收到此请求,并尝试将响应写入一个文件。我如何处理这个问题,使我不会损坏内容 我目前的做法是这样的Node.js nodejs处理阵列缓冲区,node.js,buffer,arraybuffer,Node.js,Buffer,Arraybuffer,假设我发出一个多部分、应用程序/八位字节流请求,响应类型为“arraybuffer”……假设我在nodejs中收到此请求,并尝试将响应写入一个文件。我如何处理这个问题,使我不会损坏内容 我目前的做法是这样的 var req = var req = restler.post(url, opts) .on('data', function (data){ console.log('receiving data...'); console.log(data); }).on('c
var req = var req = restler.post(url, opts)
.on('data', function (data){
console.log('receiving data...');
console.log(data);
}).on('complete', function (data) {
var buff = new Buffer(data) //this is prolly incorrect, but I can't figure this out at all
fs.writeFile(file_name, buff.toString('binary'), function(err){
console.log('done!')
});
在这里,我将内容写入文件名。
假设我获取一个microsoft word文件…获取它只会导致我找到一个损坏的文件。同样,根据使用restler软件包,您可以在
选项中设置解码:
,并将二进制数据作为缓冲区而不是默认的utf8编码字符串保持完整。从这里开始,只需将缓冲区直接传递到fs.writeFile()
,而无需调用buffer.toString()
I.LOVE.YOU。我从说明书上完全看不到这一点