在我的laravel 4.2应用程序中,cookie是通过ajax设置的。但在页面刷新时,它显示未定义的索引标记($ _COOKIE ['token'])。
//添加到购物车功能
setcookie('token', $token);
$token = $this->getcookie('token');
if(isset($token)){
$cart = Cart::create([ 'user' => $token ]);
}
public function getcookie($name) {
$cookies = [];
$headers = headers_list();
foreach($headers as $header) {
if (strpos($header, 'Set-Cookie: ') === 0) {
$value = str_replace('&', urlencode('&'), substr($header, 12));
parse_str(current(explode(';', $value, 1)), $pair);
$cookies = array_merge_recursive($cookies, $pair);
}
}
return $cookies[$name];
}
正在设置cookie。 但是在页面刷新时,我没有得到设置的cookie值
答案 0 :(得分:1)
答案 1 :(得分:0)
在laravel 4.2中,可以通过这种方式附加响应cookie。
$cookie = Cookie::make('unique_token', $token, time() + (86400 * 30));
return Response::make('cookie')->withCookie($cookie);
$cookie = Cookie::forget('unique_token');
return Response::make('cookie')->withCookie($cookie);