Php 在Laravel 5+;没有回应
我试图在一个不会返回响应的函数中设置cookie。该函数是从中间件调用的 中间件:Php 在Laravel 5+;没有回应,php,laravel,Php,Laravel,我试图在一个不会返回响应的函数中设置cookie。该函数是从中间件调用的 中间件: // Verify user $userId = $userService->verify($email, $key); if ($userId) { $userService->authenticate($userId, $key); return $next($request); } else {
// Verify user
$userId = $userService->verify($email, $key);
if ($userId) {
$userService->authenticate($userId, $key);
return $next($request);
} else {
return response('Unauthorized', 401);
}
正在调用$userService->身份验证:
// Get user
$user = $this->getById($id);
// Get user zipcode
$user->zipcode = $this->getZipcodeById($id);
// Set session
Session::set('user', $user);
if (!Cookie::has('user_forever')) {
// SET COOKIE
}
我尝试在authenticate中返回响应,但它不起作用。我不能让它工作。。所以我感谢所有的帮助
提前感谢您可以使用queue()
作为:
Cookie::queue('key', 'value', 10);
您可以使用cookie助手生成cookie实例
$cookie = cookie('name', 'value', $minutes);
但它不会被发送回客户端,除非它附加到响应实例。尝试从中间件发送,如下所示
$response = $next($request);
return $response->cookie($cookie);
未经测试的代码该死,我读到在Laravel 5中删除了Cookie::queue,但它确实有效!非常感谢。