TaoLer/app/middleware/Auth.php
2020-03-31 23:01:00 +08:00

53 lines
1.3 KiB
PHP

<?php
declare(strict_types=1);
namespace app\middleware;
use taoser\think\Auth as UserAuth;
use think\facade\Session;
class Auth
{
/**
* 处理请求
*
* @param Request $request
* @param \Closure $next
* @return Response
*/
public function handle($request, \Closure $next)
{
//halt($request->pathinfo());
$response = $next($request);
if($request->controller() !== 'Login' && $request->action() !=='logout')
{
//登陆检验
if (!Session::has('admin_id')) {
return redirect('/admin/login/index');
}
$app = app('http')->getName();
$controller = $request->controller();
$action = $request->action();
// 排除权限
$not_check = ['admin/Index/index','admin/Index/home','admin/Set/info','admin/Set/password','admin/User/logout'];
if (!in_array($app . '/' . $controller . '/' . $action, $not_check)) {
$auth = new UserAuth();
$admin_id = Session::get('admin_id');
if (!$auth->check($app . '/' . $controller . '/' . $action, $admin_id) && $admin_id != 1) {
//return response('<script>alert("没有权限");location.back()</script>');
//return response('没有权限');
return json(['code'=>-1,'msg'=>'没有权限!']);
}
}
}
return $response;
}
}