Laravel 5.2 - 无法设置cookie

时间:2016-11-20 14:13:21

标签: php laravel cookies laravel-5

我正在使用Laravel 5.2并尝试使用以下代码来设置cookie,但未设置cookie。我通过查看Chrome / Safari / FireFox开发工具以及在'cookie-test'刀片模板中调用Cookie :: get('test')进行检查。

class SampleController extends Controller {
  public function index() {
    echo 'setting cookie...';
    $response = new Response(view('cookie-test'));
    $response->withCookie('name', 'value', 60);
    return $response;
  }
}

我还尝试了在官方文档中引入的其他方法,例如

$response = new Illuminate\Http\Response('Hello World');
$response->withCookie('name', 'value', $minutes);
return $response;

$response->withCookie(cookie()->forever('name', 'value'));

Cookie::queue(cookie('name', 'value', 60))

等等,也引用了stackoverflow的答案。

有什么我想念的吗?我需要提前设置的任何配置?有什么好方法可以调试这个问题吗?

我很感激任何建议,谢谢。

1 个答案:

答案 0 :(得分:4)

我找到了原因。在返回$ response之前使用echo()或var_dump()将阻止应用程序设置cookie。我在上面的Controller的构造函数调用的类中使用了var_dump()进行调试,但是在删除var_dump()行之后,cookie已成功设置。