main.php 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. <?php
  2. $params = array_merge(
  3. require(__DIR__ . '/../../common/config/params.php'),
  4. require(__DIR__ . '/../../common/config/params-local.php'),
  5. require(__DIR__ . '/params.php'),
  6. require(__DIR__ . '/params-local.php')
  7. );
  8. return [
  9. 'id' => 'app-api',
  10. 'basePath' => dirname(__DIR__),
  11. 'bootstrap' => ['log'],
  12. 'controllerNamespace' => 'api\controllers',
  13. 'components' => [
  14. 'request' => [
  15. 'csrfParam' => '_csrf-api',
  16. 'parsers'=>[
  17. 'application/json'=>'yii\web\JsonParser'
  18. ]
  19. ],
  20. 'response'=>[
  21. 'class'=>'yii\web\Response',
  22. 'on beforeSend'=>function($event){
  23. $response = $event->sender;
  24. $response_code = \Yii::$app->request->get('response_code');
  25. if($response->data !== null && !empty($response_code)){
  26. $response->data = [
  27. 'success'=>$response->isSuccessful,
  28. 'data'=>$response->data,
  29. ];
  30. $response->statusCode = 200;
  31. }
  32. }
  33. ],
  34. 'user' => [
  35. 'identityClass' => 'common\models\User',
  36. 'enableAutoLogin' => true,
  37. 'enableSession'=>false
  38. // 'identityCookie' => ['name' => '_identity-api', 'httpOnly' => true],
  39. ],
  40. 'session' => [
  41. // this is the name of the session cookie used for login on the frontend
  42. 'name' => 'advanced-api',
  43. ],
  44. 'log' => [
  45. 'traceLevel' => YII_DEBUG ? 3 : 0,
  46. 'targets' => [
  47. [
  48. 'class' => 'yii\log\FileTarget',
  49. 'levels' => ['error', 'warning'],
  50. ],
  51. ],
  52. ],
  53. 'errorHandler' => [
  54. 'errorAction' => 'site/error',
  55. ],
  56. 'urlManager' => [
  57. 'enablePrettyUrl' => true,
  58. 'showScriptName' => false,
  59. 'enableStrictParsing' =>false,
  60. 'rules' => [
  61. ],
  62. ],
  63. ],
  64. 'modules' => [
  65. 'v1' => [
  66. 'class' => 'api\modules\v1\Module',
  67. ],
  68. ],
  69. 'params' => $params,
  70. ];