Yii2 RESTful API 的基礎和配置(一)
阿新 • • 發佈:2018-12-02
我們使用的是 yii2高階模板 yii2-app-advanced
- 複製一份 backend 到當前目錄下,並修改名稱為 api
- 修改 common\config\bootstrap.php,在其後新增如下別名:
Yii::setAlias('@api', dirname(dirname(__DIR__)) . '/api');
- 修改 api/config/main.php,把含有 backend 都改成 api
- 配置 URL 規則
'urlManager' => [
'enablePrettyUrl' => true,
'enableStrictParsing' => true,
'showScriptName' => false,
'rules' => [
[
'class' => 'yii\rest\UrlRule',
'controller' => ['v1/user'],
'pluralize' => false,
'except' =>['delete','create','update','view'], //排除掉這些方法,防止 /v1/user/3 之類的去讀取資料
'extraPatterns' => [
'POST login' => 'login',
'GET user-profile' => 'user-profile'
]
],
],
],
- 啟用 JSON 輸入
'request' => [
'parsers' => [
'application/json' => 'yii\web\JsonParser',
]
]
- 新建 modules/v1/UserController.php
<?php
namespace api\modules\v1\controllers;
use yii\rest\ActiveController;
class UserController extends ActiveController
{
public $modelClass = 'common\models\User';
}
- 使用 postman 測試:
GET localhost/xxx/v1/user
,將會拿到你想要的資訊