کلاس Routing
در پروژهٔ RESTful API این وظیفه را دارا است تا لینکهای معتبری که در این وب سرویس میتوان مورد استفاده قرار داد را مشخص سازد. برای همین منظور، این کلاس را به صورت زیر تکمیل میکنیم:
<?php
namespace Core;
class Routing
{
public $routes = [
[
'route' => 'api/v1/articles',
'module' => 'Api',
'controller' => 'DefaultController',
'action' => 'index',
],
[
'route' => 'api/v1/signup',
'module' => 'Api',
'controller' => 'UserController',
'action' => 'signup',
],
[
'route' => 'api/v1/auth',
'module' => 'Api',
'controller' => 'UserController',
'action' => 'auth',
],
];
public function __construct()
{
return $this->routes;
}
}
برای آشنایی بیشتر با ماهیت این کلاس، توصیه میکنیم به آموزش ساخت کلاس Routing از دورهٔ آموزش معماری MVC مراجعه نمایید. همانطور که ملاحظه میشود، در آرایهٔ routes$
سه به اصطلاح Endpoint تعریف کردهایم که عبارتند از:
[
'route' => 'api/v1/articles',
'module' => 'Api',
'controller' => 'DefaultController',
'action' => 'index',
],
[
'route' => 'api/v1/signup',
'module' => 'Api',
'controller' => 'UserController',
'action' => 'signup',
],
[
'route' => 'api/v1/auth',
'module' => 'Api',
'controller' => 'UserController',
'action' => 'auth',
]
اِندپوینت یا یوآرال api/v1/articles
این وب سرویس به منظور انجام عملیات CRUD برای فراخوانی، افزودن، آپدیت و حذف مقالات وبلاگ مورد استفاده قرار خواهد گرفت و همانطور که در آموزشهای آتی خواهیم دید، بسته به اینکه متد ارسالی GET
یا POST
و یا ... باشد، اَکشن خاصی اجرا خواهد شد.
با فراخوانی اِندپوینت api/v1/signup
نیز متد signup
در کنترلری به نام UserController
اجرا خواهد شد که در ادامهٔ آموزشها آن را ایجاد خواهیم نمود و در نهایت هم به اِندپوینت api/v1/auth
میرسیم که به منظور تصدیق اطلاعات کاربر (لاگین) مورد استفاده قرار خواهد گرفت.