PHP - Laravel 设置 cookie,前端程序员最新职业规划,前端学习的三个终极问题及学习路线规划
在 Laravel 中设置 cookie 可以使用 Cookie
facade 或者 response
对象。以下是设置 cookie 的示例代码:
use Illuminate\Support\Facades\Cookie;
// 设置一个简单的 cookie
$response = response('Hello World');
// 添加一个 cookie
$response->withCookie('name', 'value', $minutes);
// 或者使用 Cookie facade
Cookie::queue('name', 'value', $minutes);
// 其中 $minutes 是 cookie 的有效时长,单位为分钟。
如果你在控制器中设置 cookie,可以直接返回响应:
public function setCookie()
{
$minutes = 60;
$response = response('Cookie set successfully.');
return $response->withCookie('name', 'value', $minutes);
}
如果你想要在全局范围内设置一个 cookie,可以在中间件中设置:
namespace App\Http\Middleware;
use Closure;
use Cookie;
class SetCookie
{
public function handle($request, Closure $next)
{
$response = $next($request);
// 设置 cookie
$response->withCookie('name', 'value', $minutes);
return $response;
}
}
然后在 app/Http/Kernel.php
中注册中间件。
确保在 config/session.php
配置文件中设置了正确的 domain
和 secure
选项,以确保 cookie 在正确的域名和协议下被设置和访问。
评论已关闭