1- Rest API(Representational state transfer)
هو البناء على طريقة توافق مبدأ الـ WebSerivce من احد انواع الـ API وسميت بهذا الاسم نظراً لانها وسيلة لنقل المعلومات بين الـ Server و Client عن طريق بروتوكلات الـ HTTP
هو البناء على طريقة توافق مبدأ الـ WebSerivce من احد انواع الـ API وسميت بهذا الاسم نظراً لانها وسيلة لنقل المعلومات بين الـ Server و Client عن طريق بروتوكلات الـ HTTP
فجميع العمليات تتم من خلال هذه البروتوكولات باختلاف انواعها ومبادئها, يتكون الـ Rest API من مجموعة من الـ Services وكل واحد منها يعمل بشكل منفصل ويمكنها الارتباط لتعمل كمجموعة واحدة, وهو مبدأ مستحدث من الـ SOAP Message امر نوعا ما قديم والتعامل معه صعب ان اتتطرق اليه ...
2- HTTP Protocols
الـ HTTP لديه بعض البروتوكلات او الدوال تصف نوع الطلب المرسل الى السيرفر, لنفترض مثلا اردت جلب بعض المعلومات من السيرفر فمن الافضل ان تستخدم البروتوكول او الدالة GET اما اذا اردت اضافة بيانات جديدة فاستخدم بروتوكولPOST وهكذا
الـ HTTP لديه بعض البروتوكلات او الدوال تصف نوع الطلب المرسل الى السيرفر, لنفترض مثلا اردت جلب بعض المعلومات من السيرفر فمن الافضل ان تستخدم البروتوكول او الدالة GET اما اذا اردت اضافة بيانات جديدة فاستخدم بروتوكولPOST وهكذا
2.1 HTTP Protocols
اشهر الدوال المستخدمة بكثرة هي اربعة:
GET -> لجلب عناصر من السيرفر للعرض
POST -> لإضافة عناصر جديدة (إضافة)
PUT -> لتعديل على عنصر التعديل
DELETE -> لحذف عنصر من المصدر الحذف
اشهر الدوال المستخدمة بكثرة هي اربعة:
GET -> لجلب عناصر من السيرفر للعرض
POST -> لإضافة عناصر جديدة (إضافة)
PUT -> لتعديل على عنصر التعديل
DELETE -> لحذف عنصر من المصدر الحذف
3- Request & Response
التواصل بين السيرفر والعميل يكون عن طريق امرين Request و Response, الاول الـ Request هو الامر الصادر من الـ Client وليكن مثلا صفحة ويب او تطبيق ios كل امر او طلب يتكون من عدة امور:
التواصل بين السيرفر والعميل يكون عن طريق امرين Request و Response, الاول الـ Request هو الامر الصادر من الـ Client وليكن مثلا صفحة ويب او تطبيق ios كل امر او طلب يتكون من عدة امور:
3.1
رقم الحالة HTTP Status Code وكل رقم يدل على امر معين, فبعض الارقام تدل على ان الطلب من العميل كان مقبول وتم ارجاع بيانات صحيحة “Code 200” وبعضها تدل على ان الطلب من العميل صحيح ولكن لم يتم يستطع السيرفر معالجة البيانات “Code 503” وغيرها من الارقام.
ب
رقم الحالة HTTP Status Code وكل رقم يدل على امر معين, فبعض الارقام تدل على ان الطلب من العميل كان مقبول وتم ارجاع بيانات صحيحة “Code 200” وبعضها تدل على ان الطلب من العميل صحيح ولكن لم يتم يستطع السيرفر معالجة البيانات “Code 503” وغيرها من الارقام.
ب
3.2
بعض المعلومات الخاصة بالـ Header والتي توضح بعض المعلومات عن السيرفر وعن المعلومات التي سيقوم السيرفر بارجاعها.
البيانات التي طلبها الـ Client وتكون بصيغة JSON.
بعض المعلومات الخاصة بالـ Header والتي توضح بعض المعلومات عن السيرفر وعن المعلومات التي سيقوم السيرفر بارجاعها.
البيانات التي طلبها الـ Client وتكون بصيغة JSON.
4
المزايا
يمكن ربط العديد من الخدمات مع بعضها البعض عن طريق بعض الروابط.
فصل تام بين طبقة الـ Client و Server بحيث ان الـ Client لايستطيع ان يقوم بالتعديل او الاضافة على اي كود موجود في السيرفر.
platfromلجميع المنصات والتطبيقات
خفة البيانات المنقولة لانها تعتمد على الـ HTTP
المزايا
يمكن ربط العديد من الخدمات مع بعضها البعض عن طريق بعض الروابط.
فصل تام بين طبقة الـ Client و Server بحيث ان الـ Client لايستطيع ان يقوم بالتعديل او الاضافة على اي كود موجود في السيرفر.
platfromلجميع المنصات والتطبيقات
خفة البيانات المنقولة لانها تعتمد على الـ HTTP
العيوب
يجب ارسال جميع المعلومات في كل طلب بين الـ Client و Server.
المبرمج هو المسؤول عن الحماية فكل طلب Request يجب التحقق منه.
طريقة بناء Rest API
يجب ارسال جميع المعلومات في كل طلب بين الـ Client و Server.
المبرمج هو المسؤول عن الحماية فكل طلب Request يجب التحقق منه.
طريقة بناء Rest API
يوجد الكثير من المنصات Freamworks التي تستطيع من خلالها بناء Rest Api خاص بك, من بينها:
JAVA: Spring, Jersey, RESTX
PHP: Slim, Silex, Phalcon
Python: Django, Flask
Swift: vapor,kitura
JAVA: Spring, Jersey, RESTX
PHP: Slim, Silex, Phalcon
Python: Django, Flask
Swift: vapor,kitura
جاري تحميل الاقتراحات...