如何设置带有json响应的cookie?
我注意到,至少对我来说,以下命令是设置cookie的唯一方法:
return Redirect::to('/')
->withCookie(Cookie::make('blog', $cookie_values, 1000));
当然,如果是ajax请求,它将返回重定向的目标。
我怎样才能将其转换为ajax请求并返回带有cookie的json响应?
答案 0 :(得分:3)
我能够使用以下代码设置带有json响应的cookie:
$cookie_values = array(
'name' => Input::get('name'),
'id' => Auth::user()->id,
'login_success' => 1);
if(Request::ajax())
{
$cookie = Cookie::make('blog', $cookie_values, 1000);
$response = Response::json($cookie_values);
$response->headers->setCookie($cookie);
return $response;
}
答案 1 :(得分:1)
很好的提示!
看看Symfony \ Component \ HttpFoundation \ ResponseHeaderBag还揭示了在遇到HTTP访问控制问题时如何为json响应设置标头:
$response->headers->set('Access-Control-Allow-Origin', '/* your subdomain */');