如何在拉拉维尔设置和获取饼干

2022-08-30 12:10:32

我想在cookie中设置并获取值,但它不起作用:

    Cookie::queue('online_payment_id', "1", 15);

    $value = Cookie::get('online_payment_id');
    dd($value);

dd()返回null;


我用了下面的方式,但我得到了这个消息:

Method cookie does not exist.

    request()->cookie('online_payment_id');

    $value = response()->cookie('online_payment_id', "1", 15);
    dd($value);

答案 1

设置饼干

 public function setCookie(Request $request){
      $minutes = 60;
      $response = new Response('Set Cookie');
      $response->withCookie(cookie('name', 'MyValue', $minutes));
      return $response;
   }

获取饼干

   public function getCookie(Request $request){
      $value = $request->cookie('name');
      echo $value;
   }

答案 2

即使你仔细遵循Laravel关于如何设置cookie的文档,你最终也可能会疯狂几个小时(就像我今天所做的那样),因为你只是无法设置你的cookie!

我终于发现了为什么我的饼干没有被设置......在测试代码时,我还使用该函数来显示数据。该函数将输出发送到浏览器,这需要发送标头。Cookie也必须与标头一起发送,因此,如果您使用的是 ,您的Cookie将永远不会被发送!dump()dump()dump()

我希望这有助于其他很可能遇到这种情况的人。


推荐