首页 > 解决方案 > 无法在私有函数中设置 cookie

问题描述

这是我的路线

Route::get('/cookie/{set?}', 'SomeController@cookie');
Route::get('/cookie/set/public', 'SomeController@set_cookie_public');

这是我的功能

function cookie(Request $request , $set = 0 ){

    dump($request->cookie('xxx'));
    if($set == 1 )
        $this->set_cookie_private();
}

private  function set_cookie_private(){
    Cookie::queue('xxx', 'abc' , 8000000 );
}

function set_cookie_public(){
    Cookie::queue('xxx', 'abc' , 8000000 );
}

当我打电话给这个地址时

site.com/cookie/1

它应该调用set_cookie_private 函数并在那里设置cookie但是当我打电话时

site.com/cookie

cookie 为空

但是当我set_cookie_public通过转到它的网址打电话时

site.com/cookie/set/public

然后回到site.com/cookie它显示cookie已设置

这是为什么 ?似乎如果我一遍又一遍地调用一个 url,即使 url 中的参数发生了变化,它仍然不会设置 cookie

标签: laravelcookies

解决方案


推荐阅读