1.swoft需要在linux上運行,自己使用虛擬機在ubuntu系統下進行了安裝swoft
啓動swoft命令:
/var/www/html/swoft/bin$ sudo php swoft start
2.遇到跨域訪問解決方案引入對應的類包,並在控制器中開啓允許訪問
use Swoft\Http\Message\Bean\Annotation\Middleware;
use App\Middlewares\CorsMiddleware;
/**
*
* @Middleware(class=CorsMiddleware::class)
* @Controller(prefix="/api/jg_im")
*/
2.傳說中的註釋路由:
/**
* 用戶信息
* 地址:/api/jg_im/show_info
* @RequestMapping(route="/api/jg_im/show_info", method={RequestMethod::POST,RequestMethod::PUT})
*/
public function showInfo(Request $request)
{
$name = $request->input('name');
}
使用註釋路由的時候請注意:
控制器的註釋路由和其名稱保持一致:
/**
*
* @Middleware(class=CorsMiddleware::class)
* @Controller(prefix="/api/test")
*/
class TestController
接口名稱與註釋路由保持一致,並注意自己使用的請求方式,post與get或者put,針對自己需要選擇
/**
* 測試路由
* 地址:/api/test/create_im_user
* @RequestMapping(route="test_one", method={RequestMethod::POST,RequestMethod::PUT})
*
*/
public function testOneUser(Request $request){return 1;}
配置完成後通過自己設置的訪問路徑即可訪問接口
http://你的虛擬機訪問地址:89/api/test/test_one
3.如何使用註釋驗證器:
以Number爲例:
使用前大家先引用驗證包
use Swoft\Bean\Annotation\ValidatorFrom;
use Swoft\Bean\Annotation\Number;
/**
* 地址:/api/test/test_one
* @RequestMapping(route="test_one", method={RequestMethod::POST,RequestMethod::PUT})
* @Number(from=ValidatorFrom::POST, name="account_no", min=1, max=111, default="1111", template="提交的{account_no}參數不符合最小長度{min}和最大長度{max}")
* @param string $account_no
* @param Request $request
* @return array
*/
異常輸出:
官網有很多豐富類型,大家可以根據需求使用
4. swoft配置文件
根目錄的 .env.example
並命名爲 .env,裏面可以配置都爲常規配置,大家直接跟自己的需求配置就好了
其次自己也應該在config目錄做好自己對應的數據庫等配置:
5.swoft也提供了非常好的數據庫原型支持:
php swoft entity:create -h命令可以直接幫你創建模型(注意:在swoft框架應用內部bin目錄下使用此命令)
如無異常以下文件夾會自動幫你生成model文件:
本文將持續更新,期待大家的關注,謝謝~