diff --git a/src/Http/Middleware/CheckUserStatus.php b/src/Http/Middleware/CheckUserStatus.php index ba6a7c05277074a83629811c16ead080b4b10d95..229394d63cc36be96e8a801d6d97a42e3acd266b 100644 --- a/src/Http/Middleware/CheckUserStatus.php +++ b/src/Http/Middleware/CheckUserStatus.php @@ -26,6 +26,9 @@ use Psr\Http\Server\RequestHandlerInterface; class CheckUserStatus implements MiddlewareInterface { + private $noCheckAction = [ + '/api/user/signinfields' + ]; /** * {@inheritdoc} * @@ -34,14 +37,16 @@ class CheckUserStatus implements MiddlewareInterface public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface { $actor = $request->getAttribute('actor'); - // 被禁用的用户 if ($actor->status == 1) { throw new PermissionDeniedException('ban_user'); } // 审核中的用户 if ($actor->status == 2) { - throw new PermissionDeniedException('register_validate'); + $path = $request->getUri()->getPath(); + if(!in_array($path,$this->noCheckAction)){ + throw new PermissionDeniedException('register_validate'); + } } // 审核拒绝 if ($actor->status == 3) {