GyaanSetu JavaScript

The JavaScript and TypeScript ecosystem.

90 articlesDeep, practical knowledge

يتطلب Apache DolphinScheduler 3.x إعادة تهيئة شاملة للمجموعة وإعادة تسمية قاعدة البيانات للترقية

تفرض عملية الترقية إعادة تسمية الجداول الأساسية، ونقل كتل بيانات JSON الخاصة بالمهام إلى جداول علاقية، واستبدال الخادم الرئيسي الموحد (monolithic master) بعقد منفصلة من نوع MasterServer و WorkerServer تنسق عبر ZooKeeper أو JDBC أو Etcd.

JavaScript · 3 دقيقة قراءة

فشل رمز التحقق (OTP) في ألمانيا يكشف عن خلل في تخزين أرقام الهواتف في قواعد البيانات

تم حظر مستخدم من الدخول بسبب وجود نفس رقم الهاتف الألماني بصيغتين مختلفتين ("0171 5550134" و "+49 171 5550134") في قاعدة البيانات، مما أدى إلى إرسال رمز التحقق (OTP) إلى إدخال مكرر لم يصل إلى المستخدم أبداً.

JavaScript · 3 دقيقة قراءة

فهرس مفقود حوّل API يستغرق 45 مللي ثانية إلى كارثة مدتها 8 ثوانٍ لـ 1.5 مليون صف

كيف تسبب عمود غير مفهرس في تدمير قاعدة بياناتنا. فهرس واحد مفقود حوّل API يستغرق 8 مللي ثانية إلى كابوس مدته 8 ثوانٍ. أجرينا اختبار حمل قبل إصدار رئيسي. عمل التطوير المحلي...

JavaScript · 1 دقيقة قراءة

أداة أتمتة سفاري تغلق التبويب الخطأ بعد فشل نظام الحماية في رصد علامة الملكية

تسبب إعادة التوجيه في حذف المعرف الداخلي من صفحة النموذج، مما دفع نظام الحماية لرفض ملكية الصفحة. ونتيجة لذلك، قامت عملية التنظيف بإغلاق التبويب الحالي بشكل تلقائي، مما أدى إلى إغلاق لوحة تحكم المطور بدلاً من التبويب اليتيم.

JavaScript · 4 دقيقة قراءة

منصة تعليمية تستغني عن بيئة Node.js vm Sandbox وتعتمد نظام القائمة البيضاء لـ AST

تقوم المنصة الآن بتحليل كل استعلام يكتبه الطلاب باستخدام محلل Acorn AST، مع رفض أي عقدة خارج قائمة بيضاء صارمة. يساهم هذا الإجراء في القضاء على محاولات تجاوز التعبيرات النمطية (regex) ويمنع تسريب اتصالات قواعد البيانات النشطة داخل البيئة المعزولة.

JavaScript · 3 دقيقة قراءة

useSyncExternalStore في React 18 يمنع وميض واجهة المستخدم الناتج عن البيانات الخارجية

يستبدل هذا الـ hook الجديد النمط القديم المتمثل في محاكاة القيم الخارجية باستخدام useState و useEffect، مما يمنع حدوث التمزق (tearing) في التصيير المتزامن ويضمن قراءة كل جزء من واجهة المستخدم لنفس اللقطة (snapshot) خلال دورة التصيير.

JavaScript · 4 دقيقة قراءة

عشرة أحرف قيمتها أعلى في WWF، مما يمنحها تفوقاً بمقدار 11 نقطة في الكلمات الكبيرة

من خلال تحليل 172,835 مدخلاً من قاعدة بيانات ENABLE، كشفت الدراسة أن الأحرف العشرة ذات القيمة العالية في WWF تمنحها تفوقاً بمتوسط 2.52 نقطة لكل كلمة، بينما تتفوق Scrabble على WWF فقط في حرفي H و Y، ولا يتجاوز ذلك أبداً ثلاث نقاط.

JavaScript · 3 دقيقة قراءة

خمس علامات تبويب مفتوحة قد تؤدي لتسجيل خروج المستخدم عبر عملية تحديث واحدة لـ JWT

عندما قامت خمس علامات تبويب بتحديث رمز JWT منتهي الصلاحية في نفس الملي ثانية تماماً، تعاملت الواجهة الخلفية مع الطلبات الإضافية كأنها هجمات إعادة تشغيل (replay attacks)، مما أدى إلى إلغاء رمز التحديث (refresh token) وتسجيل خروج المستخدم من جميع علامات التبويب؛ وهو سيناريو لا يمكن لأي آلية حماية مخصصة لعلامة تبويب واحدة أن تمنعه.

JavaScript · 3 دقيقة قراءة

قضيت الأسبوع الماضي أحاول فهم كيفية عمل نطاقات .night فعلياً، ليس من خلال ورقة المواصفات، بل عبر بناء شيء ما

قضيت الأسبوع الماضي أحاول فهم كيفية عمل نطاقات .night فعلياً، ليس من خلال ورقة المواصفات، بل عبر بناء شيء يتصل بالسلسلة مباشرة. والنتيجة هي مشروع صغـ...

JavaScript · 5 دقيقة قراءة

لا تزال معظم تطبيقات الويب تتعامل مع عمليات رفع الصور كصندوق أسود. يقوم المستخدم بإسقاط ملف، فيقوم المتصفح بإرساله، ثم يقوم الخادم

لا تزال معظم تطبيقات الويب تتعامل مع عمليات رفع الصور كصندوق أسود. يقوم المستخدم بإسقاط ملف، فيقوم المتصفح بإرساله، ويقوم الخادم إما بقبول البيانات أو إظهار خطأ 413 الذي لا...

JavaScript · 5 دقيقة قراءة

عندما تقوم بالتطوير باستخدام Node.js، قد يبدو التعامل مع الأخطاء سهلاً للغاية في البداية. حيث تقوم بتغليف المسار (route) داخل try catch، وترسل

عندما تقوم بالتطوير باستخدام Node.js، قد يبدو التعامل مع الأخطاء سهلاً للغاية في البداية. حيث تقوم بتغليف المسار (route) داخل try catch، وترسل رمز الحالة 500، ثم يقرر العميل (client) ما يجب فعله بعد ذلك...

JavaScript · 5 دقيقة قراءة

إذا سبق لك أن طلبت من مطور أن "يكبّر الشعار" أو أخبرت مصمماً أن "يصلح خطأ قاعدة البيانات"، فأنت لست

إذا سبق لك أن طلبت من مطور أن "يكبّر الشعار" أو أخبرت مصمماً أن "يصلح خطأ قاعدة البيانات"، فلست وحدك. معظم الأشخاص خارج المجال التقني يستخدمون مصطلح "تصميم المواقع" و...

JavaScript · 3 دقيقة قراءة