البرمجة

استخدام المتغيرات في GraphQL

بالطبع، يمكنك تحقيق هذا النوع من التدفق في GraphQL باستخدام عمليات الاستعلام والتعديل. في حالتك المحددة، تريد استخدام نتيجة عملية mutation وتوجيهها كمدخل لعملية استعلام.

للقيام بذلك، يمكنك استخدام مفهوم المتغيرات في GraphQL. يمكنك تعريف متغير لاستيعاب النتيجة التي تم استرجاعها من العملية الأولى (mutation) واستخدام هذا المتغير كمدخل للعملية الثانية (query).

في الشيفرة المرفقة، قمت بتحويل الاستعلام وعملية التعديل لتشمل استخدام المتغيرات:

graphql
mutation LoginAndGetAddresses($email: String!, $password: String!, $passwordConfirmation: String!) { login(credentials: { email: $email, password: $password, passwordConfirmation: $passwordConfirmation }) { viewer } } query GetAddresses($viewer: String!) { addresses(viewer: $viewer) { city } }

لاحظ أننا قمنا بتعريف متغيرات في كل من العملية، وهي $email, $password, $passwordConfirmation في العملية الأولى، و $viewer في العملية الثانية.

عند استخدام GraphiQL أو أي واجهة GraphQL أخرى، يمكنك تعيين قيم لهذه المتغيرات وتشغيل العمليات. ستأخذ العملية الأولى القيم التي قمت بتوفيرها، وستسترجع viewer، والذي يمكن استخدامه كمدخل في العملية الثانية التي ستقوم بجلب العناوين المرتبطة بهذا المستخدم.

باختصار، نعم، يمكنك تحقيق هذا النوع من التدفق في GraphQL وGraphiQL من خلال استخدام المتغيرات لتوجيه نتائج العمليات السابقة إلى العمليات التالية.

المزيد من المعلومات

بالطبع، يمكننا توسيع المعلومات حول كيفية استخدام المتغيرات في GraphQL وتطبيقها في سيناريو مثل الذي تم ذكره.

في GraphQL، يُستخدم استخدام المتغيرات لتمرير قيم متغيرة إلى الاستعلامات أو التعديلات. هذا يتيح لك تنفيذ استعلامات أو تعديلات قابلة لإعادة الاستخدام مع قيم مختلفة دون الحاجة إلى إعادة كتابة الاستعلامات بأكملها.

عند تعريف عملية في GraphQL، يمكنك تحديد المتغيرات التي تتوقع أن تمرر إليها ونوع كل متغير. ثم، يمكنك استخدام هذه المتغيرات في أي موقع يمكن أن يكون به قيمة ثابتة في الاستعلام، مع وضعها بين قوسين متساويين مسبوقين برمز “$” (مثل $variable).

في سياق السيناريو الذي ذكرته، قمنا بتعريف متغير $viewer في العملية الثانية (الاستعلام)، وقمنا بتوجيهه إلى مدخل الاستعلام الذي يتوقع قيمة متغيرة. ثم، عند تنفيذ الاستعلام، يمكن تمرير قيمة المتغير $viewer إلى الاستعلام باستخدام القيم التي تم إرجاعها من العملية الأولى (التعديل)، وهكذا يتم تحقيق التواصل بين العمليات.

هذا النوع من التحكم والتفاعل بين الاستعلامات والتعديلات هو ما يجعل GraphQL قويًا ومرنًا لتلبية متطلبات تطبيقات الويب المعقدة والديناميكية. يتيح للمطورين بناء تطبيقات تفاعلية وفعالة بسهولة وسلاسة، وتقديم تجارب مستخدم ممتازة.

مقالات ذات صلة

زر الذهاب إلى الأعلى

هذا المحتوى محمي من النسخ لمشاركته يرجى استعمال أزرار المشاركة السريعة أو تسخ الرابط !!