You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

41 lines
976 B

  1. <?php
  2. namespace App\Middleware\Auth;
  3. use Psr\Http\Message\ResponseInterface;
  4. use Psr\Http\Message\ServerRequestInterface;
  5. use Psr\Http\Server\MiddlewareInterface;
  6. use Psr\Http\Server\RequestHandlerInterface;
  7. class UserMiddleware implements MiddlewareInterface
  8. {
  9. /**
  10. * @inheritDoc
  11. */
  12. public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
  13. {
  14. if (env('APP_ENV') == 'dev' || env('APP_ENV') == 'local') {
  15. return $handler->handle($request);
  16. }
  17. // 校验
  18. if (!$this->checkLogin()) {
  19. $content = [
  20. "status" => 'ok',
  21. "code" => 9002,
  22. "result" => [],
  23. "message" => '用户登录已失效'
  24. ];
  25. return $this->response->json($content);
  26. }
  27. return $handler->handle($request);
  28. }
  29. private function checkLogin()
  30. {
  31. return true;
  32. }
  33. }