建立 ReadableStream
的簡略方法是使用 Buffer
的 ReadableStream
建構函式,並將整個陣列作為單一區塊進行排隊。對於大型緩衝區,這可能是不理想的,因為此方法不會以較小的區塊「串流」資料。
const buf = Buffer.from("hello world");
const stream = new ReadableStream({
start(controller) {
controller.enqueue(buf);
controller.close();
},
});
若要以較小的區塊串流資料,請先從 Buffer
建立一個 Blob
執行個體。然後使用 Blob.stream()
方法建立一個 ReadableStream
,以指定大小的區塊串流資料。
const buf = Buffer.from("hello world");
const blob = new Blob([buf]);
const stream = blob.stream();
區塊大小可以透過傳遞數字給 .stream()
方法來設定。
const buf = Buffer.from("hello world");
const blob = new Blob([buf]);
// set chunk size of 1024 bytes
const stream = blob.stream(1024);
請參閱 文件 > API > 二進制資料,以取得使用 Bun 編輯二進制資料的完整文件。