| 12345678910111213141516171819202122232425262728293031323334353637 | 
							- <?php
 
- namespace app\common\controller;
 
- use app\common\exception\CatchException;
 
- use think\facade\Log;
 
- trait JwtAuthorizedTrait
 
- {
 
-     /**
 
-      * $payload Jwt 载荷,stdClass
 
-      *
 
-      * @var \stdClass
 
-      */
 
-     protected $payload;
 
-     public function initialize()
 
-     {
 
-         parent::initialize();
 
-         // 允许cros通过jwt所在的header
 
-         $jwt = $this->request->header('Authorization');
 
-         if (!$jwt) {
 
-             throw new CatchException("请登录", 600);
 
-         }
 
-         // 解析jwt
 
-         $jwt = str_replace('Bearer ', '', $jwt);
 
-         Log::debug("尝试解析Jwt: " . var_export($jwt, true));
 
-         $this->payload = $this->decodeJwt($jwt);
 
-         // 调用用户自定义的初始化语句
 
-         if (method_exists($this, 'init')) {
 
-             $this->init();
 
-         }
 
-     }
 
- }
 
 
  |