web-dev-qa-db-ja.com

Node.jsはBlobを作成できませんか?

私はnode.jsで作業しており、オーディオをnode.jsサーバーにストリーミングしました。今、私はオーディオブロブを構築するプロセス中に気づきました:

var audioBlob = new Blob([dataview], { type: 'audio/wav' });

新しいBlobでReferenceErrorが発生する。 Blobはサポートされていないようです。 node.js fsモジュールで保存したいblobを作成するにはどうすればよいですか。

みんなありがとう!

54
zer02

この問題の解決策は、配列バッファーとNode Buffers。:)の間で変換できる関数を作成することです。

バイナリNodeJSバッファーをJavaScript ArrayBufferに変換する

最近のノードバージョンでは、次のとおりです。

let buffer = Buffer.from(arraybuffer);
let arraybuffer = Uint8Array.from(buffer).buffer;
22
zer02

提案として、これを読むことをお勧めします。 http://howtonode.org/really-simple-file-uploads

私はあなたが何をしようとしているのか分からないのではないかと思います。 BLOB用のモジュールはないかもしれませんが、ディスクに何かを書きたい場合は、fsモジュールがあります。このコードは直接動作しませんが、..

var fs = require('fs')
  , express = require('express')

app.post('/upload', function (req, res) {
  // asynch call to write file to disk
  fs.write("/tmp/file.mp3", req.params.body, function (err) {
    if (err) console.log(err)
  });
  res.end();
});

単にmp3などを実際に/ uploadに投稿すると、ディスクに書き込まれます。必要な検証を行うことができます。

0
sent1nel