按照手册上的中间件代码
<?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
{
$session = $request->session();
if (!$session->get('userinfo')) {
return redirect('/user/login');
}
return $next($request);
}
}
当跳转到user/login操作的时候,会出现网页无法访问的问题;
正常访问user/login则没有问题,请问一下这个是什么情况呢?
什么叫无法访问?无法访问具体提示什么?
具体表现如上图所示,
网页提示信息:
该网页无法正常运作127.0.0.1 将您重定向的次数过多。
尝试清除 Cookie.
ERR_TOO_MANY_REDIRECTS
config\middleware.php
中的代码如下:
<?php
/**
*/
return [
'' => [
support\middleware\AuthCheckTest::class,
//support\middleware\AccessControlTest::class,
]
];
如果将support\middleware\AuthCheckTest::class,注释掉的话,访问user/login则能正常显示内容
烦请大大帮忙分析一下看是原因造成的
多谢大大指点,问题找到了。
原因是跳转以后在新的方法里,$session->get('userinfo')依然为空,则在跳转到user/login下以后再次跳转,导致出现上述错误。