swoft 學習筆記之初出茅廬

 

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文件:

 

 

 

本文將持續更新,期待大家的關注,謝謝~

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章