Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cookies Laravel 4-饼干不是';无法保存在本地服务器上_Cookies_Laravel_Laravel 4 - Fatal编程技术网

Cookies Laravel 4-饼干不是';无法保存在本地服务器上

Cookies Laravel 4-饼干不是';无法保存在本地服务器上,cookies,laravel,laravel-4,Cookies,Laravel,Laravel 4,在这些文档之后,我在本地虚拟主机(indgo.dev)上创建了一个“永久”(5年)的cookie 因此: $cookie = Cookie::forever('hash',$project['hash']); dd($cookie); 产出: object(Symfony\Component\HttpFoundation\Cookie)#436 (7) { ["name":protected]=> string(4) "hash" ["value":protected]

在这些文档之后,我在本地虚拟主机(indgo.dev)上创建了一个“永久”(5年)的cookie

因此:

 $cookie = Cookie::forever('hash',$project['hash']);
  dd($cookie);
产出:

object(Symfony\Component\HttpFoundation\Cookie)#436 (7) {
  ["name":protected]=>
  string(4) "hash"
  ["value":protected]=>
  string(360) "eyJpdiI6IlNJcUJZSElRTlwvQ0dJU3Z4dE44VFwvYjJ3U3lpckRZY2xsV3NlWTJ5VHJ1dz0iLCJ2YWx1ZSI6IkFHeFJGOXhjSzZxTkhZWGpIMiszUWZ5eXBUT2xuMTZFalpXdVZ3VW1CYUh1SmxKZUNPMk1rSFhONFk4REVkMzBtWlluWVhWU21uVHJXMDllKytmYm5idk5IVTNcLzIrUEgyZ3dsVllVTERyeTROU1lKUHUwb1ZpRll2V1JmU0Z4bSIsIm1hYyI6Ijc1YzcyODlkOTU0MGQ3ZjEyMDJhNjk5ZWNhOWY2ZWNhMGRhNzU4NjZiOTAwNGUzMjY1MzI2YjhhNGZjMWVhMzgifQ=="
  ["domain":protected]=>
  NULL
  ["expire":protected]=>
  int(1523085636)
  ["path":protected]=>
  string(1) "/"
  ["secure":protected]=>
  bool(false)
  ["httpOnly":protected]=>
  bool(true)
}
但是,当我尝试在不同的请求上获取cookie时:

$hash = Cookie::has('hash');
    dd($hash);
我得到
false
(或者如果我使用
get
方法,则得到
null

使用Chrome开发工具,我发现cookie确实没有显示出来。仅列出了
laravel\u有效载荷
laravel\u会话


更新:当我登录一个新的
memory\u me
cookie时,它是由
Auth
类创建的您没有在响应中发送cookie。试一试

$cookie = Cookie::forever('hash',$project['hash']);
return Response::make()->withCookie($cookie);

在第一个请求中,然后尝试获取cookie。

响应中没有发送cookie。试一试

$cookie = Cookie::forever('hash',$project['hash']);
return Response::make()->withCookie($cookie);

在第一个请求中,然后尝试获取cookie。

我遇到了cookie问题。以防Laravel 4新手,如果需要设置cookie,则需要将cookie发送给任何响应。在我的例子中,我显示了一个启动屏幕,需要在用户访问站点时设置并检查它。启动屏幕有如下内容:

if(Input::get('splash') || Cookie::get('splash')) {
    $cookie = Cookie::forever('splash', 'checked');
    return Redirect::route('home')->withCookie($cookie);
} else {
    //show the splash screen with the form which has the splash = 1 as a hidden input
}

我的饼干有问题。以防Laravel 4新手,如果需要设置cookie,则需要将cookie发送给任何响应。在我的例子中,我显示了一个启动屏幕,需要在用户访问站点时设置并检查它。启动屏幕有如下内容:

if(Input::get('splash') || Cookie::get('splash')) {
    $cookie = Cookie::forever('splash', 'checked');
    return Redirect::route('home')->withCookie($cookie);
} else {
    //show the splash screen with the form which has the splash = 1 as a hidden input
}

尝试使用Cookie::get('hash')。也许L4对饼干的推动作用略有不同,但它仍然没有在four.laravel.com上记录。实际上它是:。正如我所说,我已经尝试了
get
方法,我在这里已经回答了:我读了你的答案,我把我的问题贴了出来。我正在尝试使用cookie::get('hash')在不同的请求上获取cookie。也许L4对饼干的推动作用略有不同,但它仍然没有在four.laravel.com上记录。实际上它是:。正如我所说,我已经尝试了
get
方法,我在这里已经回答了:我读了你的答案,我把我的问题贴了出来。我想用另一种方法得到饼干谢谢。它起作用了。如何将视图作为响应与cookie一起发送?您可以使用return Response::make(view::make('hello'))将视图发送到响应;并且可以使用返回响应::make(View::make('hello'))->withCookie($cookie)将cookie附加到它;我尝试了类似于您的示例的方法,但在设置cookie之后,我无法在任何请求中获取cookie。饼干在那里,但无法读取。直到我发现Laravel不允许在cookie名称中使用
(点)。实际上,它存储cookie,但以后不会得到它。点可能用于从数组中获取值。因此,如果您将cookie设置为
cookie::forever('hash',['first'=>1])
您将能够通过
Cookie::get('hash.first')获取它谢谢。它起作用了。如何将视图作为响应与cookie一起发送?您可以使用return Response::make(view::make('hello'))将视图发送到响应;并且可以使用返回响应::make(View::make('hello'))->withCookie($cookie)将cookie附加到它;我尝试了类似于您的示例的方法,但在设置cookie之后,我无法在任何请求中获取cookie。饼干在那里,但无法读取。直到我发现Laravel不允许在cookie名称中使用
(点)。实际上,它存储cookie,但以后不会得到它。点可能用于从数组中获取值。因此,如果您将cookie设置为
cookie::forever('hash',['first'=>1])
您将能够通过
Cookie::get('hash.first')获取它