Yii2 的快速配置 api 服務 yii2-fast-api
阿新 • • 發佈:2017-12-27
進行 json arr tps str 快速開發 log 因此 技術
yii2-fast-api
yii2-fast-api是一個Yii2框架的擴展,用於配置完善Yii2,以實現api的快速開發。
此擴展默認的場景是APP的後端接口開發,因此偏向於實用主義,並未完全采用restfull的標準,方便前端開發處理接口數據以及各種異常。
Installation
使用 Composer 安裝
- 在項目中的
composer.json
文件中添加依賴:
"require": { "deepziyu/yii-fast-api": "*" }
-
執行
$ php composer.phar update
或$ composer update
進行安裝。 -
在配置文件中( Yii2 高級版為 main.php,Yii2 基礎版為 web.php )註入 fast-api 的配置:
// $config 為你原本的配置 $config = yiihelpersArrayHelper::merge( $config, deepziyuyiirestController::getConfig() ); return $config;
Usage
- 建立控制器
class YourController extends deepziyuyiirestController { /** * 示例接口 * @param int $id 請求參數 * @return string version api版本 * @return int yourId 你的請求參數 */ public function actionIndex($id) { return [‘version‘=>‘1.0.0‘,‘yourId‘=>$id]; } }
- 發送請求看看
正常請求
POST /your/index HTTP/1.1 Host: yoursite.com Content-Type: application/json {"id":"10"}
返回
{ "code": 200, "data": { "version": "1.0.0", "yourId": "10" }, "message": "OK" }
缺少參數的請求
POST /your/index HTTP/1.1 Host: yoursite.com Content-Type: application/json
返回錯誤
{ "code": 400, "data": {}, "message": "缺少參數:id" }
- 查看自動生成的Api文檔
http ://yoursite.com/route/api/index
Words In The End
感謝@暗夜在火星 的PhalApi項目,為此Yii2擴展提供設計的思路。
TODO
- 更完善的文檔指南
- Signature 過濾器插件
- 限流插件的使用
- RequestID 以及日誌存儲追蹤的參考
本文轉自碼雲推薦 | 基於 yii2 的快速配置 api 服務 yii2-fast-api,僅供學習交流使用!
Yii2 的快速配置 api 服務 yii2-fast-api