بالنسبة لموضوع اختيار API فالمسألة راجعة اليك .فاذا كنت قد استخدمت من قبل api معين فبامكانك استخدامه مع angular اما اذا كنت تود البحث عن api يتناسب مع اطار العمل الدي تعمل عليه ولنقل مثل انك تتقن اطار عمل laravel او ماشابه فبامكانك ايضا البحث عن api يكون على شكل اضافة تضيفه باطار عملك فهذا ايضا جيد اما لو كنت تستخدم لغة برمجة اخرى مثل java او #C فأنت ادرى بهذه المواضيع وبامكانك البحث عن REST API مكتوبة بهذه اللغات البرمجية
وادا لم تكن ترغب بالدخول بمتاهات وتعقيدات فبامكانك ايضا استخدام هذا الapi الذي سنستخدمه في درسنا فهو سهل الاستخدام وبسيط في التنصيب لايحتاج للكثير من العناء كما انه يوفر اغلب الاشياء التي نحتاجها في بناء تطبيقات ومشاريع في الويب .
مسار api حمله من github
https://github.com/mevdschee/php-crud-api/tree/v1
طريقة التنصيب سهلة جدا
ماعليك سوى تحميل المشروع من github و انشاء قاعدة بيانات جديدة ثم الدخول لملف api.php وتعديل اعدادات قاعدة البيانات
// uncomment the lines below when running in stand-alone mode:
$api = new PHP_CRUD_API(array(
'dbengine'=>'MySQL',
'hostname'=>'localhost',
'username'=>'root',
'password'=>'root',
'database'=>'my_db_api',
'charset'=>'utf8'
));
$api->executeCommand();
انشئ قاعدة البيانات ولنسميها مثلا
my_db_api
CREATE DATABASE `my_db_api`;
انشيء جدول الأعضاء كمثال فقط حتى نتأكد ان api تعمل بشكل جيد
CREATE TABLE my_db_api.users (
`id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(30) NOT NULL,
`password` varchar(15) NOT NULL,
`email` varchar(75) NOT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
أضف بعض المستخدمين
INSERT INTO `users` ( `username`, `password`, `email`) VALUES
('seif', '123456', 'contact@exportdeveloper.com'),
('kamal', '123456', 'kamal@gmail.com'),
('issam', '123456', 'issam@gmail.com'),
('yasmine', '123456', 'yasmine@gmail.com'),
('oussama', '123456', 'oussama@gmail.com');
بعد انشاء قاعدة البيانات واعداد ال api قم بتشغيل apache (السرفر المحلي) وقم باقلاع api
انا سميت مجلد المشروع
webapi
والدخول عليه يتم بهذا الشكلhttp://localhost/webapi/api.php
جرب استعرض قائمة المسخدمين الدين انشئناهم بقاعدة البيانات .عن طريق اضافة اسم الجدول
users
الى المسارhttp://localhost/webapi/api.php/users
سوف يستعرض المتصفح هذه النتيجة
{
"users": {
"columns": [
"id",
"username",
"password",
"email"
],
"records": [
[
2,
"seif",
"123456",
"contact@exportdeveloper.com"
],
[
3,
"kamal",
"123456",
"kamal@gmail.com"
],
[
4,
"issam",
"123456",
"issam@gmail.com"
],
[
5,
"yasmine",
"123456",
"yasmine@gmail.com"
],
[
6,
"oussama",
"123456",
"oussama@gmail.com"
]
]
}
}
طبعا لانحتاج الى مثل هذه النتائج لتكون بهذا الشكل وانما نحتاجها على شكل objects حتى يسهل على angular التقاطها وسنضيف دائما الى المسارات هذه التعليمة لكي يعطي النتائج حسب حاجتنا
transform=1
ليصبح المسار هكذاhttp://localhost/webapi/api.php/users?transform=1
والنتيجة هي object بهذا الشكل
{
"users": [
{
"id": 2,
"username": "seif",
"password": "123456",
"email": "contact@exportdeveloper.com"
},
{
"id": 3,
"username": "kamal",
"password": "123456",
"email": "kamal@gmail.com"
},
{
"id": 4,
"username": "issam",
"password": "123456",
"email": "issam@gmail.com"
},
{
"id": 5,
"username": "yasmine",
"password": "123456",
"email": "yasmine@gmail.com"
},
{
"id": 6,
"username": "oussama",
"password": "123456",
"email": "oussama@gmail.com"
}
]
}
نستطيع جلب بيانات للاعمدة التي نريد مثلا username
http://2mp/api/api.php/users?columns=username&transform=1
تستطيع القاء نظرة على التوثيق (Docs) الخاص بهذه ال api للمزيد من المعلومات
https://github.com/mevdschee/php-crud-api/wiki
تعليقات
إرسال تعليق