因為下一個專案要用TP5開發一個小程式,所以就使用到了,TP框架,因為小程式開發需要後臺來編寫api介面,所以就上網查了一下有沒有相關的依賴,在此推薦一下think-api擴充套件工具,因為主要想使用其中的jwt功能來判斷小程式使用者的登入狀態,下面就以本人的專案為例,簡單和大家聊一下,通過think-api來部署JWT。
1.安裝依賴
本人使用的TP版本是TP5.1,擴充套件下載地址:https://github.com/czewail/think-api ,通過composer安裝依賴。composer require zewail/think-api:1.1.x
2.配置說明
通過composer安裝完畢後,我們們可以在 vendor/think-api/config/jwt.php檔案中檢視jwt的配置,主要是使用者模型路徑那塊,需要修改一下。return [ // 加密演算法 'algorithm' => 'HS256', // HMAC演算法使用的加密字串 'key' => 'ex-key', // RSA演算法使用的私鑰檔案路徑 'privateKeyPath' => '/home/rsa_private_key.pem', // RSA演算法使用的公鑰檔案路徑 'publicKeyPath' => '/home/rsa_public_key.pem', // 誤差時間,單位秒 'deviation' => 60, // 過期時間, 單位分鐘 'ttl' => 120, // 使用者模型路徑 'user' => app\api\model\User::class, ];
3.建立API介面控制器
通過命令列建立我們想要反回Token給前端的控制器php thnk make:controller api/Index
4.引用依賴
在建立的檔案頭新增檔案路徑:use Zewail\Api\Facades\JWT;
案例程式碼如下:public function index(){ //獲取前臺傳送過來的登入資訊 $tel = $this->request->tel; $password = $this->request->passwword; //把登入資訊傳入JWT驗證匹配 $credentials = ['tel' => $tel, 'password' =>$password]; //驗證通過返回token $token = JWT::attempt($credentials); $msg = "驗證成功"; //把token傳送給前臺確認是否成功登陸 return $this->ApiSuccess($token, $msg); }
有一點需要注意因為API離預設的接收引數是mobile和password。上門的例子中是tel和password。更改了變數名稱,所以我們需要在使用者模型中接入一下程式碼來說明。以此類推。public $jwtSub = 'tel';
5.配置路由
在 route/route.php中加入路由地址Route::get('api/test', 'api/Index/index');
6.執行測試
在postman中測試結果如下,這樣我們們就可以在後臺生成token返給前臺驗證登入了。
ThinkPHP5-使用 think-API 部署 JWT
相關文章
- jwt以及如何使用jwt實現登入JWT
- JWT概述和使用JWT
- Laravel 配合 jwt 使用LaravelJWT
- DingoApi 中使用 JWTGoAPIJWT
- laravel中使用jwtLaravelJWT
- JWT 完整使用詳解JWT
- Gin(十五):JWT使用(續)JWT
- JWT-配置與使用JWT
- jwt是什麼?php jwt類封裝和使用JWTPHP封裝
- jwt-在asp.net core中的使用jwtJWTASP.NET
- ThinkPHP5-微信小程式獲取使用者授權登入資訊PHP微信小程式
- 使用 JWT 認證使用者身份JWT
- Spring Boot中使用token:jwtSpring BootJWT
- Python JWT 介紹和使用PythonJWT
- PHP 使用 jwt 使用者身份認證PHPJWT
- Gin框架dgrijalva/jwt-go例項(JWT使用者認證)框架JWTGo
- 聊聊PHP裡面JWT的使用PHPJWT
- 使用JWT的Spring Security - JakubLeškoJWTSpring
- simple-jwt的簡單使用JWT
- laravel 介面使用JWT(dingo)認證LaravelJWTGo
- GraphQL 配合 JWT 使用 —— Laravel RSS (二)JWTLaravel
- Composer 使用 JWT 生成 TOKEN 例項JWT
- JWT 快速為使用者生成 tokenJWT
- ThinkPHP5 使用 JWT 進行加密PHPJWT加密
- Lumen 8.0 使用 Jwt 認證的 ApiJWTAPI
- Laravel使用JWT來建立使用者認證APILaravelJWTAPI
- Hyperf 框架使用 JWT 進行使用者認證框架JWT
- 使用 postman 除錯 jwt 開發的介面Postman除錯JWT
- JWT 在專案中的實際使用JWT
- Spring Boot使用JWT進行token驗證Spring BootJWT
- .net core中使用jwt進行認證JWT
- Laravel JWT 多表多使用者登入LaravelJWT
- go開源庫之jwt-go使用GoJWT
- JWT驗證使用者資訊功能JWT
- 使用 GoFrame 框架 JWT 方式驗證使用者資訊GoFrame框架JWT
- asp.net core使用identity+jwt保護你的webapi(二)——獲取jwt tokenASP.NETIDEJWTWebAPI
- jwtJWT
- jumpserver部署使用Server