在Laravel中,为下一个响应排队Cookie的场景是什么

时间:2013-12-21 15:59:09

标签: cookies laravel response

我正在阅读Laravel的文档。我真的很困惑 Laravel队列中的cookies。此时Queueing A Cookie For The Next Response我很困惑,任何人都可以告诉我一些我可以应用的场景。

1 个答案:

答案 0 :(得分:1)

这很简单,如果您需要在获得响应之前设置cookie,那么您应该对其进行排队,以便在发送响应时,cookie将自动附加响应。例如,通常你会附上像这样的响应的cookie

$response = Response::make('Hello World');
$response->withCookie(Cookie::make('name', 'value', $minutes));

现在,您认为您手上还没有响应,并且您希望在响应中附加Cookie,因此在这种情况下,您只需使用

排队Cookie
Cookie::queue($name, $value, $minutes);

因此,每当响应将被发送时,排队的cookie将随响应一起附加,并将自动与响应一起发送,换句话说,任何排队的cookie将自动附加响应,因此您可以排队与响应一起发送的cookie以及每当发送响应时,排队的cookie也将被发送,您不必手动将cookie附加到响应中。

也许你可以这样想:

Step-1: You are in a before filter
Step-2: You determined to send a cookie with the response later so queue it here
Step-3: You are in the Controller and finally you did something like

return View:make(...);

Laravel将检查是否有任何排队的cookie,如果它在队列中发现了任何cookie,那么Laravel将附带响应的cookie,并将自动发送响应。