على منتدى آخر من منتديات Discourse، اقترح @sam أن أقدم تقرير خطأ هنا: يبدو أن هناك فشلاً متقطعًا (على الأقل) في Oneboxing لمقالات CNN. نظرًا لأن هذا موقع بارز، يبدو الأمر مهمًا جدًا. من غير الواضح ما إذا كانت المشكلة تتعلق بتحديد المعدل، أو حظر وكيل المستخدم، أو مشكلة من جانب Discourse، أو مشكلة فعلية في بيانات oEmbed، أو ما شابه ذلك.
أمثلة:
(تمت إزالة أمثلة إضافية بسبب كون المستخدم جديدًا.)
لا يتم عرض روابط CNN المبلغ عنها كـ onebox لأن حجم الاستجابة هو 2.7 ميجابايت وهو أكبر من الحد الحالي البالغ 2 ميجابايت. يمكننا إصلاح ذلك عن طريق زيادة الحجم الافتراضي ولكن أود أن أفهم بشكل أفضل مخاطر القيام بذلك.
يعتمد على محرك onebox. تقوم بعض محركات onebox مثل Amazon بكشط معلومات معينة مثل سعر العنصر من داخل <body>. بالنسبة لمحركات opengraph، يجب أن نحتاج نظريًا فقط إلى علامات معينة مثل <meta> في <head>.
ستكون الطريقة الأكثر كفاءة هي تحليل الاستجابة للمعلومات الضرورية أثناء تدفق الاستجابة، ولكن تغيير جميع محركاتنا للقيام بذلك من المحتمل أن يتطلب قدرًا كبيرًا من الجهد وهو حل أكثر تعقيدًا.
في الواقع، Nokogiri، الذي نستخدمه لتحليل استجابة HTML، قادر على تحليل نص HTML غير مكتمل، لذلك لا داعي للتخلص من الاستجابة بأكملها عندما تكون كبيرة جدًا. أعتقد أنه يمكننا الاستمرار في تحديد حجم نص الاستجابة بـ 2 ميجابايت، وإذا تجاوز حجم الاستجابة ذلك، فسنحاول فقط تحليل أول 2 ميجابايت.