أنا فرونت اند وعملت أول موقع لي باستخدام ريأكت وأريد ارساله لمبرمج الباكاند لكن طلب مني API
شو هوا ال API ووين اكتبه وكيف وهل يحتاج وقت؟
ما يقصده مبرمج الواجهة الخلفية، أنك بحاجة إلى استخدام Fetch API من أجل إرسال طلبات AJAX إلى السيرفر الذي قام بإنشائه، ومن المفترض أن يقوم بتوفير الروابط أو الـ End points (نقاط النهاية) التي سيتم الإتصال بها.
سواء لجلب بيانات من السيرفر وعرضها في الواجهة مثل بيانات المستخدم لعرضها في صفحته الشخصية، وهكذا.
أو إرسال طلب إضافة بيانات إلى السيرفر مثل طلب إضافة بيانات حساب المستخدم أو صورته مثلاً.
أو طلب تسجيل دخول المستخدم حيث يجب إرسال بيانات تسجيل الدخول إلى رابط معين ليتم مصادقة تلك البيانات في السيرفر.
أو طلب تعديل بيانات حيث يجب طلب رابط معين في السيرفر لتعديل بيانات الحساب الشخصي مثلاً وهكذا.
وكل تلك الأمور تعرف باسم CRUD وقد تم شرحها في النقاش التالي:
وبإختصار ليس مطلوب من مطور الواجهات اتقان عمل مشروع CRUD، لكن يجب أن يعلم كيفية التعامل معها وارسال طلبات الـ Create, Read, Update, Delete للـ APIs بالشكل صحيح.
وأنصحك بقراءة ومشاهدة المقالات والنقاشات والفيديوهات التالية:
وتستطيعي البحث عن ما تريدين في مقالات أكاديمية حسوب أو موسوعة حسوب:
API هي اختصار لـ "Application Programming Interface"، وهي واجهة برمجية تستخدم للتواصل بين تطبيقين أو برامج مختلفة. وعندما يقوم مبرمج الباكاند بطلب API منك، فإنه يريد منك إعطائه وصولًا إلى بعض البيانات أو الخدمات التي يحتاجها لتطوير الجزء الخلفي من الموقع.
لتزويد مبرمج الباكاند بـ API، يجب عليك تحديد النوع الصحيح من الـ API الذي يحتاجه المبرمج. يمكن أن يكون API عبارة عن واجهة برمجية على الإنترنت عبر HTTP، أو عبارة عن ملف JSON يتم تحميله من الموقع الخاص بك. وبمجرد تحديد نوع الـ API المطلوب، يمكنك إنشاء وثائق API المناسبة التي تحدد الطريقة التي يجب استخدامها للتواصل مع الـ API.
يمكن أن يحتاج إنشاء API وقتًا وجهدًا للتطوير والاختبار، ويعتمد ذلك على حجم العمل اللازم والمتطلبات المحددة. ومن الممكن أن يتطلب الأمر بعض الوقت لتطوير API بشكل صحيح واختباره قبل تسليمه لمبرمج الباك اند.
وفيما يلي مثال لطلب API:
على سبيل المثال، إذا كان لديك موقع لبيع المنتجات وتريد أن تمنح مبرمج الباك اند وصولًا إلى بعض البيانات المتعلقة بالمنتجات، فيمكنك إنشاء واجهة برمجية لعرض قائمة المنتجات وتفاصيل كل منتج.
ويمكن إنشاء وثائق API المناسبة لتوضيح كيفية استخدام هذه الواجهة برمجية، وعلى سبيل المثال، يمكن أن تبدو الوثائق كالتالي:
GET /api/products - استراد قائمة المنتجات Parameters: None Response: { "products": [ { "id": 1, "name": "Product 1", "description": "This is product 1", "price": 10.99 }, { "id": 2, "name": "Product 2", "description": "This is product 2", "price": 20.99 } ] } GET /api/products/{id} - استراد تفاصيل المنتج الخاص بالـ ID المحدد Parameters: - id: رقم التعريف الفريد للمنتج Response: { "id": 1, "name": "Product 1", "description": "This is product 1", "price": 10.99 }
ويمكن أن يتم استدعاء هذه الواجهة برمجية عن طريق إجراء طلب HTTP GET إلى عنوان URL المحدد، مع تحديد معلمات الطلب المطلوبة. على سبيل المثال، يمكن استدعاء واجهة برمجية لاستراد قائمة المنتجات باستخدام العنوان التالي:
http://example.com/api/products
ويمكن أن يتم تغيير المعلمات المحددة في الطلب لتحديد المنتج الذي يجب استراد تفاصيله، على سبيل المثال:
http://example.com/api/products/1
في هذا المثال، يتم استرداد تفاصيل المنتج الذي له رقم التعريف الفريد 1. وهكذا، يمكن لمبرمج الباك اند استخدام هذه الواجهة البرمجية للوصول إلى بيانات المنتجات وتحميلها في الجزء الخلفي من الموقع.
الموقع عبارة عن مجموعة أطباء يتم التواصل مع المرضى والمريض يختار الطبيب المناسب ثم موعد مناسب
هنا راح استخدم api لقائمة الأطباء صحيح؟ وكذلك صفحة التسجيل وتسجيل الدخول
أو على مبرمج باك اند تحديد ذلك لي؟
نعم، يمكن استخدام API للحصول على قائمة الأطباء والمعلومات المرتبطة بهم من خلال مصدر خارجي. يمكن أن يوفر API مثل هذه المعلومات بصيغة JSON أو XML ويمكن استخدامها في موقعك.
بالنسبة لصفحة التسجيل وتسجيل الدخول، يمكنك استخدام نظام المستخدمين الخاص بالإطار الذي تستخدمه في موقعك.
يمكنك استخدام PHP أو أي لغة برمجة أخرى لإنشاء نظام تسجيل الدخول والتحقق من صحة بيانات المستخدم وتخزينها في قاعدة البيانات من الصفر.
على العموم، يمكن لمبرمج الباكإند تحديد ذلك بالتفصيل وتطوير نظام تسجيل الدخول وإنشاء قاعدة بيانات متصلة بها لتخزين معلومات المستخدمين وتحقق من صحة بياناتهم.
كما يمكن للمبرمج الباك إند تحديد أيضًا ما إذا كان يجب استخدام API للحصول على قائمة الأطباء أو تخزينها محليًا في قاعدة البيانات.
API هي تعني واجهة برمجة التطبيقات. إنها عبارة عن مجموعة من الوظائف والإجراءات والقواعد التي يتم توفيرها من قِبَل البرنامج أو الخدمة لتمكين تفاعل وتبادل البيانات مع التطبيقات الأخرى.
إذا كنت ترغب في إرسال بيانات من موقع React الخاص بك إلى خادم الباك إند (Backend)، ستحتاج إلى معرفة الـ API الذي يستخدمه المطور الخاص بالباك إند. عادةً ما يقوم مطور الباك إند بتوفير وثائق (Documentation) توضح كيفية استخدام الـ API الخاص به. لكتابة واستخدام الـ API في تطبيقك، عادةً ما يتم استخدام الوظائف والطرق المتاحة في لغة البرمجة التي تستخدمها (مثل JavaScript) لإجراء طلبات HTTP إلى الـ API وتلقي الردود. يمكنك استخدام مكتبات مثل Axios أو Fetch في React لإجراء هذه الطلبات.
بالنسبة لمدة الوقت المطلوبة لتنفيذ هذا الأمر، فإن ذلك يعتمد على حجم المشروع وتعقيده وعلى توافر الوثائق ودعم المطور الخاص بالباك إند.
شكراً الك
سؤال ثاني معلش هلأ الAPI يلي انشأه هيكون لصفحة التسجيل وتسجيل دخول ونسيان الباسوورد مثلاً
هل في صفحات أخرى تحتاه مثلاً صفحة برفايل أو صفحة مسجات؟
العفو
في الحالات دي انصح باستخدام لغة BACKEND مباشرة زي PHP MY SQL , PYTHON DJANGO او حتي الFIREBASE دول هينفذو كل الحاجات دي اللي قولت عليها زي تسجيل دخول ونسيان باسورد وVERIFY ACCOUNT
الAPI استخدمه اكتر في جزئية انك تجيب داتا جاهزة علي حسب المشروع زي مثلا api لمنتجات متجر او api لتصنيف افضل 100 فيلم في التاريخ وكلها بتكون api متوفرة علي الانترنت
يمكنك الاطلاع علي امثلة لapi من هذا الموقع
API هو اختصار لـ "Application Programming Interface"، وهو واجهة برمجة التطبيقات تسمح لتطبيقك بالتفاعل مع الخدمات والموارد المقدمة من الخادم الخاص بالباكاند.
عندما يطلب منك مبرمج Back-End الباكاند API، يعني ذلك أنه يحتاج إلى معرفة الواجهة التي ستستخدمها تطبيقك للتفاعل مع Back-End . يمكن أن يتضمن ذلك الطرق المتاحة للاتصال بالخادم، والطرق المقبولة لتبادل البيانات، وتنسيقات البيانات المتوقعة، ومعايير الأمان والمصادقة.
عادةً ما يتم توثيق API في وثائق توضح كيفية استخدامه. يمكنك الحصول على وثائق الـ API من مبرمج Back-End الذي تتعامل معه. عادةً ما يقومون بتوفير مستندات مفصلة توضح كيفية استخدام الـ API وأنواع الطلبات والاستجابات المتوقعة.
لكتابة API في تطبيق ريأكت الخاص بك، يمكنك استخدام مكتبات مثل Axios أو Fetch للقيام بطلبات HTTP إلى خادم Back-End.
وقت التنفيذ يعتمد على حجم المشروع وتعقيده. قد يتطلب منك بعض الوقت لتعلم كيفية استخدام الـ API وتنفيذها في تطبيقك، وقد تحتاج أيضًا إلى تعديل التطبيق الحالي للتكامل مع الـ API الجديدة. من الأفضل أن تتواصل مع مبرمج Back-End لتحديد المهلة المناسبة ومتطلبات العمل.
التعليقات