0

ドキュメントに従って、ローカル仮想ホスト (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(またはメソッドnullを使用するget場合)

Chrome Dev tools を使用すると、実際に Cookie が表示されないことがわかりました。laravel_payloadリストされているのはとだけlaravel_sessionです。

更新: ログインすると、クラスによって新しいremember_meCookie作成されますAuth

4

2 に答える 2

5

応答で Cookie を送信していません。試す

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

最初のリクエストで、Cookie の取得を試みます。

于 2013-04-08T16:16:14.160 に答える