Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Страницы 1
Как для определенного роута (маршрута) или контроллера отключить полностью ссесию?
Или как создать маршруты в апи файле роутов? у меня всегда 404 ошибку выдает
Не в сети
api.php урлы начинаются с префикса /api
app/Providers/RouteServiceProvider.php:68
Не в сети
Route::middleware('auth:api')->get('/user', function (Request $request) {
return $request->user();
});
по примеру пробовал и было с ошибкой, но сделал как было в web.php
Route::Group(['domain' => 'cdn.test.net'], function(){
Route::get('/tags.js', 'CDNController@index')->name('showTags');
});
и заработало
и еще вопрос
/**
* The application's route middleware groups.
*
* @var array
*/
protected $middlewareGroups = [
'web' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
// \Illuminate\Session\Middleware\AuthenticateSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
\Illuminate\Routing\Middleware\SubstituteBindings::class,
],
'api' => [
'throttle:60,1',
'bindings',
],
];
где прочитать про эту часть
'api' => [
'throttle:60,1',
'bindings',
],
что за параметры задаются
Изменено adams (26.02.2018 23:40:58)
Не в сети
и я правильно понимаю, что разместив такой маршрут
Route::Group(['domain' => 'cdn.test.net'], function(){
Route::get('/tags.js', 'CDNController@index')->name('showTags');
});
в api.php роутов, ссесии и куки для этого маршрута создаваться не будут?
Не в сети
где прочитать про эту часть
'api' => [ 'throttle:60,1', 'bindings', ]
,что за параметры задаются
Это middleware. Смотри App\Http\Kernel.
Первый разрешает 60 запросов в 1 минуту для одного IP-шника. Второй работает с параметрами роутера.
Изменено Sergant210 (01.03.2018 08:10:46)
Не в сети
в api.php роутов, ссесии и куки для этого маршрута создаваться не будут?
Сессии подключаются в группе web (3-й элемент массива).
'web' => [
\App\Http\Middleware\EncryptCookies::class,
\Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
\Illuminate\Session\Middleware\StartSession::class,
// \Illuminate\Session\Middleware\AuthenticateSession::class,
\Illuminate\View\Middleware\ShareErrorsFromSession::class,
\App\Http\Middleware\VerifyCsrfToken::class,
\Illuminate\Routing\Middleware\SubstituteBindings::class,
],
Не в сети
я правильно понимаю, что разместив такой маршрут…
в api.php роутов, ссесии и куки для этого маршрута создаваться не будут?
Термин API используется практически как синоним REST А REST подразумевает state-less, то есть отстутствие состояния. Сессии и куки это варианты хранения состояния. Так что да, логично сохранить такой порядок и не использовать сессии.
There are two hard things in computer science: cache invalidation, naming things, and off-by-one errors.
Не в сети
Это middleware. Смотри App\Http\Kernel. Первый разрешает 60 запросов в 1 минуту для одного IP-шника. Второй работает с параметрами роутера.
Я хочу создать маршрут для отдачи баннеров, если оставлять данный роут в web.php то для каждого запроса создается ссесия в redis, я хотел от этого избавиться.
где подробнее можно почитать, что каждый из них делает?
protected $routeMiddleware = [
'auth' => \Illuminate\Auth\Middleware\Authenticate::class,
'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class,
'can' => \Illuminate\Auth\Middleware\Authorize::class,
'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,
];
Оставил пока так
'api' => [
'bindings',
],
И я правильно понимаю, что сейчас не будет никаких ограничений на запросы + ссесия в redis не создается?
Изменено adams (02.03.2018 22:24:56)
Не в сети
И я правильно понимаю, что сейчас не будет никаких ограничений на запросы + ссесия в redis не создается?
Точно.
Не в сети
Страницы 1