vanyahuk
@vanyahuk

Почему не работают сессии в одном и том же контролере контроллере?

почему то не работают сессии в одном и том же контроллере

<?php

namespace App\Http\Controllers;

use App;

use Lang;

use Session;

use Request;

use Carbon\Carbon;

use Illuminate\Routing\Controller as BaseController;

class Controller extends BaseController
{


    protected  $data = array('auth' => false );


    public function __construct(){

        $this -> auth() ;
    }

    protected  function auth()
    {

        if( Session::has('id')  )
                return $this -> data['auth'] = true;

        return  $this -> data['auth'] = false;

    }

    protected static function create_auth( $id )
    {
        Session::put( 'id' , $id );

        Session::save();

        return true;
    }

}


Сначала отрабатывает метод create_auth(), после чего происходит редирект на новый урл, но в немSession::get('id') - пустое

версия laravel - 5.5
  • Вопрос задан
  • 330 просмотров
Решения вопроса 1
Astatroth
@Astatroth
Я тут случайно
Потому что с версии 5.3 сессия недоступна в конструкторе контроллера. Используйте костыль типа
$this->middleware(function ($request, $next) {
            ...
            return $next($request);
        });
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы