企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# 用户管理 最新的用户管理使用`JWT(jsonWebToken)`加解密管理用户权限,服务器不保存用户状态,用户状态由前端自己管理. 其原理如下: > 用户登录 ->服务器验证->服务器加密用户基本信息->返回token->前端保存 > 用户携带token访问->服务器解密获得用户基本信息->进一步操作 ## 用户登录 ``` protected function userLogin($user); // 比如某用户 $user = ["id"=>"12","name"=>"ArH"]; $this->userLogin($user); // 加密得到 qwerty (实际上更复杂) // 函数返回用户数组,其中包含了token ``` >[success] 用户登录后可以使用 `$this->USER_ID;` 获取用户id ## 获取当前用户 可用于验证权限 ``` protected function currentUser(); // 如果是登录状态则返回用户基本信息 // 如果没登录有两种情况 // 1 未携带token 2 token解密错误 这两种情况都是直接返回404 ``` ### 验证权限场景 比如自己有没有点赞是需要登陆后才能看到的,比如删除某数据需要看是不是自己的 ``` public function xList(){ $user = $this->cuurentUser(); //返回的用户 如果没有登陆则会直接404,下面的代码也不会执行 // 进一步,如果删除要是自己的 if($user['id']==$data['user_id']){ // delete.... } } ```