يتضمن تحويل Body.json
بالفعل بما أنه يقوم بإرجاع البيانات المتعلقة بالجسم كوعد (Promise)، ولكنه ليس بالضرورة يعتمد على setTimeout
أو يقوم بالقيام بعملية متكررة مشابهة لـ setTimeout
حتى يتم العثور على نهاية التدفق (stream). بدلاً من ذلك، يعمل Body.json
بشكل مشابه للعمليات الأخرى المستدامة (non-blocking) في JavaScript، حيث يمكن استخدام await
أو .then()
لاستخراج البيانات بمجرد توفرها دون حاجة لتعليق التنفيذ.
المزيد من المعلومات
بالتأكيد! عند استخدام Body.json()
، يتم إرجاع Promise الذي يتم حله ليعيد جسم الاستجابة (response body) كـ JSON object. هذا يعني أنه يمكنك استخدامه بشكلٍ متزامن باستخدام await
أو بشكلٍ غير متزامن باستخدام .then()
.
في حين أنه لا يعتمد على setTimeout
أو عملية تكرارية مشابهة، يتم استخدام نهجٍ غير تقليدي للحصول على البيانات الصادرة من تدفق البيانات (streaming data) دون حاجة لتعليق التنفيذ. تستمر هذه العملية حتى تنتهي البيانات من الوصول من خلال التدفق.
يمكن أن يكون هذا النهج فعالًا في تجنب حدوث تعليقات في التطبيقات التي تتعامل مع بيانات كبيرة أو تدفقات البيانات الكبيرة.