webman暂时不能实现控制器级别的中间件,如何实现控制器继承公共控制器来实现登录授权判断

0

可以给个示例代码吗

已邀请:

walkor

赞同来自: coding abc123

鉴权用中间键来做,可以在中间键中判断当前访问的是哪个控制器,然后决定是否执行登录权限判断,类似如下:


<?php
namespace support\middleware;

use Webman\MiddlewareInterface;
use Webman\Http\Response;
use Webman\Http\Request;

class AuthCheckTest implements MiddlewareInterface
{
public function process(Request $request, callable $next) : Response
{
// 只有controller是app\controller\Index时才执行权限验证
if ($request->controller == \app\controller\Index::class) {
$session = $request->session();
if (!$session->get('userinfo')) {
return redirect('/user/login');
}
}
return $next($request);
}
}

要回复问题请先登录注册