مشاوره رایگان
دریافت لینک های دانلود دریافت پستی درب منزل مبلغ کل: تومان
جهت دریافت کد تخفیف به کانال تلگرام مراجعه و یا با پشتیبان آنلاین هماهنگ نمایید

RESTful API ها در فریمورک Yii


فریمورک Yii ویژگی های مفید زیر را برای اجرای RESTful API ها فراهم می کند :

  • نمونه سازی سریع
  • سریال سازی اشیاء قابل تنظیم
  • فرمت پاسخ (با پشتیبانی از JSON و XML به طور پیش فرض)
  • قالب بندی داده های جمع آوری شده و خطاهای اعتبار سنجی
  • مسیریابی کارآمد
  • پشتیبانی از HATEOAS
  • پشتیبانی از افعال OPTIONS و HEAD ساخته شده است
  • کش داده و کش HTTP
  • اعتبارسنجی (Authentication) و مجوزدسترسی (authorization)
  • محدود کردن Rate

ما برای نشان دادن API های RESTful بصورت عملی، به اطلاعات نیاز داریم.

آماده سازی DB

مرحله 1 - ایجاد یک پایگاه داده جدید: پایگاه داده را می توان به دو روش زیر ایجاد نمود:

  • در ترمینال، دستور زیر را اجرا نمایید.

 

mysql -u root –p
  • ایجاد یک پایگاه داده جدید از طریق دستورزیر:

  CREATE DATABASE helloworld CHARACTER SET utf8 COLLATE utf8_general_ci؛

 

مرحله 2 - connection پایگاه داده را در فایل config/db.php پیکربندی کنید. تنظیمات زیر برای سیستم مورد استفاده کنونی می باشد.

<?php
   return [
      'class' => 'yii\db\Connection',
      'dsn' => 'mysql:host = localhost;dbname = helloworld',
      'username' => 'vladimir',
      'password' => '12345',
      'charset' => 'utf8',
   ];
?>

مرحله 3 - داخل دایرکتوری ریشه، دستور ./yii migrate/create test_table را اجرا کنید. این فرمان یک database migration را برای مدیریت DB ایجاد می کند. فایل migration   باید در پوشه  migrations در ریشه پروژه قرار بگیرد.

مرحله 4 - فایل migration را (m160106_163154_test_table.php در مثال ما) به صورت زیر ویرایش کنید.

<?php
   use yii\db\Schema;
   
   use yii\db\Migration;
   class m160106_163154_test_table extends Migration {
      public function safeUp() {
         $this->createTable("user", [
            "id" => Schema::TYPE_PK,
            "name" => Schema::TYPE_STRING,
            "email" => Schema::TYPE_STRING,
         ]);
         $this->batchInsert("user", ["name", "email"], [
            ["User1", "user1@gmail.com"],
            ["User2", "user2@gmail.com"],
            ["User3", "user3@gmail.com"],
            ["User4", "user4@gmail.com"],
            ["User5", "user5@gmail.com"], 
            ["User6", "user6@gmail.com"],
            ["User7", "user7@gmail.com"],
            ["User8", "user8@gmail.com"],
            ["User9", "user9@gmail.com"],
            ["User10", "user10@gmail.com"],
            ["User11", "user11@gmail.com"],
         ]);
      }
      public function safeDown() {
         $this->dropTable('user');
      }
   }
?>

migration بالا یک جدول به نام user  با چنیین فیلدهایی ایجاد می کند: id, name, email. همچنین تعدادی user نیز به جدول مان اضافه می نماید.

مرحله 5 - داخل ریشه پروژه دستور ./yii migrate را اجرا کنید. تا migraton به Database مان اعمال شود.

مرحله 6 - حالا ما باید یک مدل برای جدول user مان ایجاد کنیم. برای سادگی کار، ما قصد داریم از ابزار تولید کد Gii استفاده کنیم.

این آدرس را باز کنید: url: http://localhost:8080/index.php?r=gii. سپس بر روی دکمه “Start” زیر هدر “Model generator” کلیک کنید. نام جدول را user و نام کلاسِ مدل را MyUser بگذارید، روی دکمه “Preview” کلیک کنید و در نهایت روی دکمه “Generate” کلیک نمایید.

مدل MyUser باید در دایرکتوری models  ظاهر شود.

نصب Postman

Postman  یک ابزار مفید برای ایجاد یک سرویس RESTful است. بطوریکه یک رابط مفید برای ساخت request ها فراهم می کند.

شما می توانید این ابزار را در https://chrome.google.com/webstore/detail/postman/fhbjgbiflinjbdggehcddcbncdddomop؟hl=en پیدا کنید.

 

برای نصب آن، دکمه “Add to Chrome” را فشار دهید.

فصلِ: 14 , تعداد قسمت ها: 188 , سطح: صفر تا صد

این فصل در یک نگاه:

سلام . پیشنهاد میکنم حتما دموی دوره رو مشاهده کنید درباره فریم ورک Yii: در پاسخ به سوالات : آیا این فریم ورک سریع است؟ آیا این یک فریم ورک امن است؟ آیا این یک فریم ورک حرفه ای است؟ آیا ا…
فصلِ: 8 , تعداد قسمت ها: 77 , سطح: صفر تا صد

این فصل در یک نگاه:

  پیشنهاد میکنیم دمو دوره رو حتما مشاهده کنید با سلام خدمت دوستان عزیز . ابتدا عرض کنم که این دوره برای دوستانی آماده شده که میخوان وب اپلیکیشن های مدرنی رو طراحی بکنن و وارد بازار کار ط…

تولید شده توسط کلیک سایت

پشتیبانی آنلاین
آماده پاسخگویی هستیم
انتخاب تصویر جهت ارسال:
در حال ضبط صدا

(جهت توقف و یا لغو ضبط از دکمه های زیر استفاده کنید)

توقف و ارسال :
لغو ضبط
در حال حاضر تمامی کارشناسان آفلاین هستند. همواره می توانید با شماره تلگرام / واتساپ 09010005000 به صورت آنلاین با ما در ارتباط باشید. جهت ورود به واتساپ کلیک کنید
0 پیام جدید
پشتیبان در حال تایپ ...
ارسال تصویر ضبط صدا
0 کارشناسان آنلاین می باشند
این گفت و گو توسط پشتیبان به اتمام رسید