Зарегистрируйте маршрут, используя приложение-контейнер Laravel
Я хотел бы динамически регистрировать свои маршруты (конечные точки) в Laravel. Я не использую маршруты. Php, но я хочу зарегистрировать маршруты, используя
$this->app->get()
или подобный, в поставщике услуг. Кроме того, я хотел бы также добавить промежуточное программное обеспечение таким образом к динамически зарегистрированному маршруту.
1 ответ
Решение
Вы можете взглянуть на свой RouteServiceProvider@map
в App\Providers
чтобы увидеть, как Laravel импортирует routes.php
файл.
Затем вы можете импортировать ваш JSON-файл, преобразовать его в массив и пройти по нему.
Ваш файл JSON может выглядеть так
[
{
"method": "get",
"uri": "/profile",
"action": {
"as": "profile",
"uses": "UserController@showProfile",
"middleware": "auth"
}
}
]
Когда вы декодируете это, вы можете сделать что-то подобное
\Route::$method($uri, $action);