## 1. 生成令牌
你可以在`app\common.php` 中添加生成令牌的方法:
~~~
/**
* 生成令牌
*/
function shopToken()
{
$data = request()->buildToken('__token__', 'sha1');
return '<input type="hidden" name="__token__" value="' . $data . '" class="token">';
}
~~~
## 2. 在模板表單中使用:
~~~
<div class="layui-form-item">
{:shopToken()}
</div>
~~~
## 3. 控制器驗證
~~~
namespace app\controller;
use think\exception\ValidateException;
use app\BaseController;
class Index extends BaseController
{
public function index(Request $request)
{
$check = $this->request->checkToken('__token__', $this->request->param());
if (false === $check) {
throw new ValidateException('invalid token');
}
// ...
}
}
~~~
- ThinkPHP6 安裝與更新
- PHP編碼規范-保障團隊代碼風格一致
- 通用化API數據格式-簡單事情極致化
- 健壯系統服務-杜絕無效請求
- 健壯系統服務-不可預知得內部異常處理
- 健壯系統服務-變量全局過濾
- 健壯系統服務-令牌Token統一生成與驗證
- 集成JWT-實現token用戶身份驗證機制
- 敏感數據簽名-集成SHA512withRSA算法簽名
- API多版本控制
- 全站靜態化
- 擴展類庫的使用(extend)
- 開發自己的Composer擴展包
- 自定義命令行實現定時任務
- redis篇
- 集成redis-高速數據緩存
- redis分布式鎖-解決緩存穿透,緩存擊穿
- redis緩存雪崩解決方案
- redis數據隊列-抗住高并發寫
- redis限流-控制用戶訪問頻率
- 集成swagger,自動生成接口文檔
- 集成Oauth2.0 - 密碼模式
- 服務分流-提升吞吐率, 提升請求性能
- Nginx 防止域名被惡意解析
- Nginx post請求大小限制
- mysql數據庫備份
- 數據庫全量備份-建議一周或者三天進行一次全量備份
- 數據庫增量備份-一天一次增量備份
- 阿里云.idb文件單表恢復
- Git初始化
- Git簡易的命令行入門教程
- webhook自動部署
- PHP源碼保護和性能加速
- think-swoole 擁抱swoole的高性能
- 全站HTTPS安全訪問