【问题标题】:Lumen Request has session app('session') is empty. Redirect not working流明请求有会话 app('session') 为空。重定向不起作用
【发布时间】:2016-03-26 14:04:06
【问题描述】:

在流明控制器上采用以下存储方法时

public function store(Request $request, JwtToken $jwtToken, Redirector $redirector)
{
    $sessionData = $request->session()->all();
    $this->validate($request, [
        'username' => 'required',
        'password' => 'required'
    ]);
}

在 $sessionData 中,会话中的所有数据都存在,包括以前的 url。当通过默认验证器时,它调用app('session')->previousUrl(),它返回null

$request->session() 上执行相同操作时,它存在。我不知道是我搞砸了还是这是流明中的错误。

我尝试了 Redis 和文件驱动程序。

【问题讨论】:

  • 您可能需要发布有关您的设置的更多信息,因为对 Lumen 的全新安装的快速测试工作正常,并且之前的 URL 存在,以及您描述的两种会话访问方法。
  • @Bogdan 我发现向方法添加 Redirector 依赖项比运行 dd(app('session')->previousUrl()); 当 Redirector 存在于依赖项中时返回 null 当你离开它时它返回正确的 url

标签: php laravel session lumen


【解决方案1】:

您在bootstrap/app.php 上忘记了这一点:

/*
|--------------------------------------------------------------------------
| Register Middleware
|--------------------------------------------------------------------------
|
| Next, we will register the middleware with the application. These can
| be global middleware that run before and after each request into a
| route or middleware that'll be assigned to some specific routes.
|
*/

$app->middleware([
    Illuminate\Cookie\Middleware\EncryptCookies::class,
    Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
    Illuminate\Session\Middleware\StartSession::class,
    Illuminate\View\Middleware\ShareErrorsFromSession::class,
    Laravel\Lumen\Http\Middleware\VerifyCsrfToken::class,
]);

【讨论】:

  • 不是问题,它似乎已经准备好了, Redirector $redirector导致它崩溃。如果您删除重定向器,它会起作用
【解决方案2】:

似乎是通过执行以下操作修复的 Lumen 中的错误

public function store(Request $request, JwtToken $jwtToken)
{
    $sessionData = $request->session()->all();
    $this->validate($request, [
        'username' => 'required',
        'password' => 'required'
    ]);

    //use global redirect helper function
}

移除 Redirector 引用并使用全局辅助函数

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-02
    • 1970-01-01
    • 2012-07-30
    • 2012-07-14
    • 1970-01-01
    相关资源
    最近更新 更多