重定向回后如何解决读取Cookie的问题?

时间:2019-05-02 15:09:15

标签: php laravel laravel-5

我写了一个简单的代码,单击按钮后它会重定向回去。重定向与cookie一起使用,但是当我读取它时,它已被加密,如何读取cookie的解密值?

它如何工作?我有一个FrontendController,其中包括布局,并且当我更改样式时,它会通过/ s / dark

路线调用

控制器主页调用扩展的Frontend函数,此后,我必须读取cookie,但是它已加密。

function setStyle($style = "light") {
    if($this->cookie->getCookie('style') == "light") {
        $style = "dark";
    } else {
        $style = "light";
    }

    return redirect()->back()->withCookie(cookie('style', $style));
}

编辑

我期待的在cookie值,但我有这样的事情 eyJpdiI6IitEUWc2WDlBT1l3bDcyNW1YbnlcL3RBPT0iLCJ2YWx1ZSI6IlNRQ2ZhcG5INE1iNVwvalZMTjFOZVBRPT0iLCJtYWMiOiJmOTFkYTU1ZTY0MTU5NDVhMjQzYWFhZTQxNzdkZGRlZDJkNThhMDU0YTE0YjYwMDU4NzZmYTI2ZTk5ZWIyY2Y1In0 =

1 个答案:

答案 0 :(得分:0)

您可以在Laravel中使用会话代替cookie。

要存储会话数据:

$value = $request->session()->get('key');

要检索会话数据:

function setStyle(Request $request) { $style = $request->style; $request->session()->put('style', $style); return redirect()->back(); }

假设您有一个按钮,显示“将样式切换为深色”,并且值为“深色”。如果样式不是深色,则显示“将样式切换为浅色”,并且值为“浅色”。您按下按钮将带您进入设置会话样式的控制器:

public function index()
{
    $style = $request->session()->get('style');

    if ($style == 'light') {
        // do your light thing
        $buttonText = "Switch style to dark";
    } else {
        // do your dark thing
        $buttonText = "Switch style to light";
    }


           // return redirect with style
 }

现在在显示页面时在控制器中说,您要将页面显示为“亮”或“暗”。

minSdkVersion (lowest possible) <= 
    targetSdkVersion == compileSdkVersion/TargetFrameworkVersion (latest SDK)