Laravel会话变量消失了

时间:2014-01-24 10:28:29

标签: php session laravel laravel-4 session-variables

我已经在我的laravel应用程序中实现了OAuth 1.0a客户端。我想存储我在用户会话中获得的临时凭证和访问令牌。

作为POC,我使用$ _SESSION变量使用PHP本地会话构建了我的代码。工作就像一个魅力。但是,我想移动我的代码并使用laravel的Session类。这就是我意识到laravel不会保存我的会话数据的方式。

以下是相关代码的主要部分:

if (Input::get('release_name')) // ask for auth
    {
        $temporary_credentials = $server->getTemporaryCredentials();

        Session::put("temporary_credentials", serialize($temporary_credentials));
        $this->customLog(Session::get("temporary_credentials")); // this prints the string representation of my credentials

        return $server->authorize($temporary_credentials);
    }

    else if (Input::get('oauth_token') && Input::get('oauth_verifier')) // got back from provider
    {
        $this->customLog(Session::get("temporary_credentials"));
                    // here the Session::get returns null
    }

知道为什么我的temporary_credentials在第二步被“取消”了吗?

快速编辑:我正在使用'文件'驱动程序

谢谢!

1 个答案:

答案 0 :(得分:0)

因此,如果有人试图在laravel应用程序中实现League Oauth V1客户端,那么保持Session工作所需要做的就是更改此

header('Location: '.$url);

到这个

return \Illuminate\Support\Facades\Redirect::to($url);