<?php
namespace App\Modules\Admin\Http\Middleware;
use App\Traits\Json;
use Closure;
use Illuminate\Http\Request;
use Tymon\JWTAuth\Exceptions\JWTException;
use Tymon\JWTAuth\Exceptions\TokenExpiredException;
use Tymon\JWTAuth\Exceptions\TokenInvalidException;
class CheckAuth
{
use Json;
protected $guard;
public function handle(Request $request, Closure $next)
{
$this->guard = 'admin';
$auth = Auth()->guard($this->guard);
try {
if ( !$auth->check() ) { return $this->errorJson('认证失败,请重新登录!', -1);
}
} catch (TokenExpiredException $e) {
return $this->errorJson($e->getMessage());
} catch (TokenInvalidException $e) {
return $this->errorJson($e->getMessage());
} catch (JWTException $e) {
return $this->errorJson($e->getMessage());
}
return $next($request);
}
}