[英]Make new Buffer using portion of other Buffer in Node.js
我目前正在Node.js中進行AWS調用。 該調用返回一個緩沖區。
var aws = new AWS.S3();
var params = {
Bucket: s3config.bucket,
Key: s3config.tile_directory + filepath //,
// Range: 'bytes=0-' + (this.HEADER_SIZE - 1)
};
var ts = this;
aws.getObject(params, function(err, data){
var buff = data.Body;
}
我想創建一個新的Buffer,它等同於我使用了注釋掉的range:
param。 所以我想要緩沖區的位0- ts.HEADER_SIZE
,以便我以后不必進行三個不同范圍的AWS調用。
我試過了:
var newBuff = new Buffer(data.Body, 0, ts.HEADER_SIZE - 1);
但它似乎只是讓我回到我開始使用的緩沖區。 有任何想法嗎?
您需要做的第一件事是創建一個大小為ts.HEADER_SIZE
的新緩沖區。
var newBuff = new Buffer(ts.HEADER_SIZE)
然后,您可以將較大緩沖區的一部分復制到此新緩沖區中。
data.Body.copy(newBuff, 0, 0, ts.HEADER_SIZE - 1);
newBuff
的值現在將是您想要的子集。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.