main.php 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. <?php
  2. $params = array_merge(
  3. require __DIR__ . '/../../common/config/params.php',
  4. require __DIR__ . '/../../common/config/params-swoole.php',
  5. require __DIR__ . '/params.php'
  6. );
  7. $urlManagerRules = require __DIR__ . '/urlManagerRules.php';
  8. return [
  9. 'id' => 'app-frontendApi',
  10. 'basePath' => dirname(__DIR__),
  11. 'bootstrap' => ['log'],
  12. 'modules' => [
  13. 'v1' => [
  14. 'basePath' => '@frontendApi/modules/v1',
  15. 'class' => 'frontendApi\modules\v1\Module'
  16. ],
  17. ],
  18. 'components' => [
  19. 'request' => [
  20. //'csrfParam' => '_csrf-frontendApi',
  21. //'cookieValidationKey' => '98bS8sqf3iRmSy24ZGDug2e36pLmj2wN',
  22. 'class' => \common\components\Request::class,
  23. 'parsers' => [
  24. 'application/json' => 'yii\web\JsonParser',
  25. 'text/json' => 'yii\web\JsonParser',
  26. ]
  27. ],
  28. 'response' => [
  29. 'class' => 'yii\web\Response',
  30. 'format' => 'json',
  31. 'on beforeSend' => function ($event) {
  32. $response = $event->sender;
  33. if ($response->data !== null && Yii::$app->request->getSuppressResponseCode()) {
  34. $response->data = [
  35. 'success' => $response->isSuccessful,
  36. 'data' => $response->data,
  37. ];
  38. $response->statusCode = 200;
  39. }
  40. },
  41. ],
  42. 'user' => [
  43. 'class' => 'frontendApi\modules\v1\components\UserAuth',
  44. 'identityClass' => 'frontendApi\modules\v1\models\User',
  45. 'enableAutoLogin' => false,
  46. 'idParam' => '__user'
  47. ],
  48. 'brand' => [
  49. 'class' => 'frontendApi\modules\v1\components\BrandAuth',
  50. 'identityClass' => 'frontendApi\modules\v1\models\brand\User',
  51. 'enableAutoLogin' => false,
  52. 'idParam' => '__brand',
  53. 'identityCookie' => ['name' => '_brand_identity', 'httpOnly' => true],
  54. ],
  55. 'log' => [
  56. 'traceLevel' => YII_DEBUG ? 3 : 0,
  57. 'targets' => [
  58. [
  59. 'class' => 'yii\log\FileTarget',
  60. 'levels' => ['error', 'warning'],
  61. ],
  62. ],
  63. ],
  64. 'urlManager' => [
  65. 'enablePrettyUrl' => true,
  66. 'enableStrictParsing' => true,
  67. 'showScriptName' => false,
  68. 'rules' => $urlManagerRules,
  69. ],
  70. ],
  71. 'params' => $params,
  72. ];