>我正在寻找创建用户访问网站时不会过期的cookie的最佳方法(cookie包含uuid(。我正在使用Laravel,据我所知,最好的方法似乎是使用中间件。任何人都可以提供其他建议,以及任何代码示例。
谢谢
我会为此使用中间件,创建一个SetUserCookie
中间件或类似:
class SetUserCookie {
public function handle($request, Closure $next) {
$response = $next($request);
return $response->withCookie(cookie()->forever('uuid', Str::uuid()));
}
}
在内核中注册中间件:
protected $routeMiddleware = [
...
'setUserCookie' => AppHttpMiddlewareSetUserCookie::class,
...
];
您还可以使用队列方法将 Cookie 附加到响应:
$minutes = 60 * 24 * 365 * 10; // ten years should be long enough
Cookie::queue(Cookie::make('uuid', Str::uuid(), $minutes));
Cookie::queue('uuid', Str::uuid(), $minutes);
索取文档