النهج الساذج لإنشاء ReadableStream من Uint8Array هو استخدام منشئ ReadableStream وإدخال المصفوفة بالكامل ككتلة واحدة. للكتل الأكبر، قد يكون هذا غير مرغوب فيه لأنه لا يقوم "بتدفق" البيانات فعليًا.
ts
const arr = new Uint8Array(64);
const stream = new ReadableStream({
start(controller) {
controller.enqueue(arr);
controller.close();
},
});لتدفق البيانات في كتل أصغر، قم أولاً بإنشاء مثيل Blob من Uint8Array. ثم استخدم الدالة Blob.stream() لإنشاء ReadableStream يقوم بتدفق البيانات في كتل بحجم محدد.
ts
const arr = new Uint8Array(64);
const blob = new Blob([arr]);
const stream = blob.stream();يمكن تعيين حجم الكتلة عن طريق تمرير رقم إلى الدالة .stream().
ts
const arr = new Uint8Array(64);
const blob = new Blob([arr]);
// تعيين حجم كتلة 1024 بايت
const stream = blob.stream(1024);راجع Docs > API > Binary Data للحصول على الوثائق الكاملة حول التعامل مع البيانات الثنائية باستخدام Bun.