graphql
بناء واجهات برمجة تطبيقات GraphQL آمنة مع أفضل الممارسات
يمكن أن تؤدي مرونة GraphQL إلى مشاكل في الأداء والأمان دون ضوابط مناسبة. توفر هذه المهارة أنماطاً مثبتة لاستخدام DataLoader، وتحديد عمق الاستعلام، والتفويض لبناء واجهات برمجة تطبيقات GraphQL جاهزة للإنتاج.
تنزيل ZIP المهارة
رفع في Claude
اذهب إلى Settings → Capabilities → Skills → Upload skill
فعّل وابدأ الاستخدام
اختبرها
استخدام "graphql". تصميم مخطط لكتالوج منتجات تجارة إلكترونية
النتيجة المتوقعة:
- مخطط GraphQL مع أنواع Product و Category و Review
- قابلية عدم مناسبة للحقول الاختيارية مثل discountPrice
- اتصالات للترقيم الصفحي لمراجعات المنتج
- طفرات لعمليات CRUD مع أنواع الإدخال
استخدام "graphql". إصلاح استعلامات N+1 في محلل منشورات المستخدم
النتيجة المتوقعة:
- تطبيق DataLoader يجمع عمليات بحث معرف المستخدم
- تخزين مؤقت بمفتاح معرف المستخدم لمنع الاستعلامات المكررة
- التكامل مع سياق Apollo Server
- تحسين الأداء من N استعلامات إلى استعلام مجمع واحد
التدقيق الأمني
آمنThis skill is a documentation file containing GraphQL best practices and patterns. Static analysis flagged false positives: line 69 references related skills (not shell execution), and lines 3, 22, 34, 63, 72 contain markdown content (not cryptographic code). No executable code or security risks detected.
درجة الجودة
ماذا يمكنك بناءه
مطور واجهة خلفية يبني واجهة برمجة تطبيقات جديدة
تصميم وتنفيذ واجهة برمجة تطبيقات GraphQL جاهزة للإنتاج مع تحسينات أداء مناسبة وضوابط أمان من البداية.
فريق الواجهة الأمامية يدمج GraphQL
إعداد Apollo Client مع تخزين مؤقت طبيعي وأنماط جلب بيانات فعالة لتطبيقات React.
قائد تقني يدقق واجهة برمجة تطبيقات موجودة
تحديد وإصلاح الأنماط المضادة الشائعة في GraphQL مثل عدم وجود DataLoader، وعمق استعلام غير محدود، وفجوات التفويض.
جرّب هذه الموجهات
أنشئ مخطط GraphQL لمدونة يحتوي على أنواع User و Post و Comment. ضمّن قابلية عدم مناسبة، وعلاقات، وعمليات CRUD شائعة كاستعلامات وطفرات.
لدي محلل GraphQL يجلب المؤلفين للمنشورات. كل محلل منشورات يقوم باستعلام قاعدة بيانات منفصل. أرني كيفية تطبيق DataLoader لتجميع هذه الاستعلامات وتخزينها مؤقتاً.
أرني كيفية تطبيق التفويض على مستوى الحقل في محاليل GraphQL. بعض الحقول يجب أن تكون مرئية فقط للمستخدمين المصادق عليهم أو المستخدمين بأدوار محددة.
أفضل الممارسات
- استخدم دائماً DataLoader لتجميع استعلامات قاعدة البيانات ومنع مشاكل N+1
- حدّ من عمق الاستعلام والتعقيد للحماية من هجمات DoS
- طبّق التفويض في المحاليل، وليس فقط توجيهات المخطط
تجنب
- إجراء اتصالات قاعدة البيانات مباشرة في المحاليل بدون DataLoader
- السماح بعمق استعلام غير محدود في نقطة نهاية GraphQL الخاصة بك
- الاعتماد فقط على توجيهات المخطط لمنطق التفويض