Redirect 缺少CakePHP 4身份验证插件RequestAuthorizationMiddleware重定向url

Redirect 缺少CakePHP 4身份验证插件RequestAuthorizationMiddleware重定向url,redirect,cakephp,authorization,cakephp-4.x,Redirect,Cakephp,Authorization,Cakephp 4.x,我尝试在cake 4中为我的应用程序中的某个控制器添加RequestAuthorizationMiddleware。 在中,我看到如下代码块: $middlewareQueue->添加(新授权中间件($this、[ “未经授权的处理程序”=>[ 'className'=>'Authorization.Redirect', 'url'=>'/users/login', 'queryParam'=>'redirectUrl', “例外情况”=>[ MissingIdentityException::

我尝试在cake 4中为我的应用程序中的某个控制器添加RequestAuthorizationMiddleware。 在中,我看到如下代码块:

$middlewareQueue->添加(新授权中间件($this、[
“未经授权的处理程序”=>[
'className'=>'Authorization.Redirect',
'url'=>'/users/login',
'queryParam'=>'redirectUrl',
“例外情况”=>[
MissingIdentityException::类,
OtherException::类,
],
],
]));
如果授权失败,我可以添加重定向url。
这很好,但我如何为添加重定向url?

当授权失败时,您不会真正得到重定向,但当无法执行授权时,即当不存在可用于授权的已验证身份时,将引发以下异常:

\Authorization\Exception\MissingIdentityException
如果您希望捕获不成功的授权,即当用户/标识不允许访问您正在保护的任何资源时,那么您也需要处理以下异常:

\Authorization\Exception\bankedenexception
该异常由请求授权中间件以及(除非您正在执行手动
can*
检查)引发

只需将其添加到
异常
配置中,您就可以开始了(即假设您对手动
can*
检查无法处理的所有失败授权尝试都可以进行重定向):

“例外情况”=>[
\授权\Exception\MissingIdentityException::类,
\授权\异常\禁止异常::类,
// ...
],

请注意,为了使所有这些正常工作,您必须在默认授权中间件之后添加请求授权中间件

当授权失败时,您实际上不会得到重定向,但当无法首先执行授权时,即当不存在可用于授权的身份验证时,将引发以下异常:

\Authorization\Exception\MissingIdentityException
如果您希望捕获不成功的授权,即当用户/标识不允许访问您正在保护的任何资源时,那么您也需要处理以下异常:

\Authorization\Exception\bankedenexception
该异常由请求授权中间件以及(除非您正在执行手动
can*
检查)引发

只需将其添加到
异常
配置中,您就可以开始了(即假设您对手动
can*
检查无法处理的所有失败授权尝试都可以进行重定向):

“例外情况”=>[
\授权\Exception\MissingIdentityException::类,
\授权\异常\禁止异常::类,
// ...
],
请注意,为了使所有这些正常工作,您必须在默认授权中间件之后添加请求授权中间件