Сеанс Lumen / Laravel для конкретного маршрута - PullRequest
0 голосов
/ 13 июня 2018

Я пытаюсь получить рабочий сеанс Lumen, но только для определенного маршрута, так как на другом он мне не нужен.

Все, что я нахожу, - это включить посредство, например

$app->middleware([
    'Illuminate\Cookie\Middleware\EncryptCookies',
    'Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse',
    'Illuminate\Session\Middleware\StartSession',
    'Illuminate\View\Middleware\ShareErrorsFromSession',
]);

(source https://stackoverflow.com/a/32635502/1861519)

Но это сделает глобальную настройку сеанса. Но мне это нужно было только как печально на конкретном маршруте.

Ответы [ 2 ]

0 голосов
/ 28 сентября 2018

Вы можете попробовать это при использовании сессии на определенных маршрутах:

$session = $request->session();
$session->put('foo', 'bar');
echo $session->get('foo');
$session->save();

save() сохранит файл сессии для вас.

0 голосов
/ 13 июня 2018

Все промежуточное ПО уровня приложения находится здесь

  $app->middleware([
     \Illuminate\Cookie\Middleware\EncryptCookies,
     \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse ]);

Пользовательское промежуточное ПО, которому требуется сеанс

$ app-> routeMiddleware (['session'=> \ Illuminate \ Session \ Middleware \ StartSession]);

Теперь добавьте его в маршрут

$app->get('/protected', ['middleware' => 'session', 'uses' => 'ProtectedController@index'])
...