MainController.php 880 B

123456789101112131415161718192021222324252627282930313233343536
  1. <?php
  2. namespace mall\controllers;
  3. use common\components\util;
  4. use Yii;
  5. use yii\web\HttpException;
  6. class MainController extends BaseController
  7. {
  8. public $guestAccess = ['index', 'error'];
  9. /**
  10. * 默认首页:供健康检查、域名根路径访问,避免 defaultRoute 404
  11. */
  12. public function actionIndex()
  13. {
  14. util::success([
  15. 'service' => 'app-mall',
  16. 'status' => 'ok',
  17. ]);
  18. }
  19. /**
  20. * 统一 JSON 错误输出(替代不存在的 site/error)
  21. */
  22. public function actionError()
  23. {
  24. $exception = Yii::$app->errorHandler->exception;
  25. if ($exception instanceof HttpException) {
  26. util::error($exception->statusCode, $exception->getMessage());
  27. }
  28. $message = $exception ? $exception->getMessage() : '服务器错误';
  29. util::fail($message);
  30. }
  31. }