404 в версионированном rest

Всё что касается построения API
Закрыто
azz
Сообщения: 197
Зарегистрирован: 2016.07.06, 17:20

404 в версионированном rest

Сообщение azz »

Приветствую. Уже сломал мозг в попытках заставить это работать. Делаю по статье
Структура:

Код: Выделить всё

api/
    config/
    controllers/
    modules/
        v1/
            controllers/
            models/
    runtime/
    web/
main.php

Код: Выделить всё

<?php
...
	'modules' => [
		'v1' => [
			'basePath' => '@api/modules/v1',
			'class' => 'api\modules\v1\Module'
		]
	],
        'urlManager' => [
            'enablePrettyUrl' => true,
            'enableStrictParsing' => true,
            'showScriptName' => false,
            'rules' => [
                '' => 'site/index',
				[
					'class' => 'yii\rest\UrlRule',//\yii\rest\UrlRule::class,
					'controller' => [
						'v1/test',
					],
					'pluralize' => FALSE,
				]
            ],
        ],
    ],
];
api\modules\v1\Module.php

Код: Выделить всё

<?php

namespace api\modules\v1;

class Module extends \yii\base\Module {

	public $controllerNamespace = 'api\modules\v1\controllers';

	public function init() {
		parent::init();
	}
}
api\modules\v1\controllers\TestController.php

Код: Выделить всё

<?php

namespace api\modules\v1\controllers;

use yii\rest\Controller;

class TestController extends Controller {
	public function actionGet() {
		return [
			'id' => 1,
		];
	}
}
common\config\bootstrap.php

Код: Выделить всё

Yii::setAlias('@api', dirname(dirname(__DIR__)) . '/api');
Выделен отдельный домен под api/web.
Делаю запрос /v1/test/get, получаю 404. Где ошибка, подскажите...
azz
Сообщения: 197
Зарегистрирован: 2016.07.06, 17:20

Re: 404 в версионированном rest

Сообщение azz »

Старость не радость.

Код: Выделить всё

'enableStrictParsing' => true,
правила для test-контроллера не прописаны, как следствие 404.

Код: Выделить всё

'rules' => [
...
	'v1/test/<action>' => 'v1/test/<action>',
решило проблему
Закрыто