Laravel Cookie
在处理Web应用程序的用户会话时,Cookie扮演着重要角色。在本章中,您将学习在基于Laravel的Web应用程序中使用Cookie的方法。
创建Cookie
Laravel的全局Cookie帮助器可以创建Cookie。它是 Symfony\Component\HttpFoundation\Cookie 的实例。可以使用withCookie()方法将Cookie附加到响应中。创建 Illuminate\Http\Response 类的响应实例来调用withCookie()方法。Laravel生成的Cookie是加密和签名的,客户端无法修改或读取它。
下面是带有解释的示例代码。
Cookie()方法需要三个参数。第一个参数是cookie的名称,第二个参数是cookie的值,第三个参数是cookie的持续时间,超过这个时间后cookie将自动被删除。
可以使用forever方法来永久设置Cookie,如下所示的代码。
检索Cookie
设置Cookie后,我们可以通过cookie()方法检索Cookie。此cookie()方法只需一个参数,即Cookie的名称。可以通过使用 Illuminate\Http\Request 实例调用cookie方法。
以下是示例代码。
示例
观察以下示例以更好地了解Cookie:
步骤1 - 执行以下命令创建一个控制器,在其中我们将操作Cookie。
步骤2 − 执行成功后,您将收到以下输出 −
步骤3 - 将以下代码复制到
app/Http/Controllers/CookieController.php 文件中。
app/Http/Controllers/CookieController.php
步骤4 - 在 app/Http/routes.php 文件中 添加以下行。
app/Http/routes.php
步骤5 − 访问以下URL以设置cookie。
步骤6 - 输出结果将显示如下。屏幕截图中出现的窗口来自Firefox,但是根据您的浏览器,也可以从Cookie选项中检查Cookie。
步骤7 − 访问以下URL以从上面的URL获取cookie。
步骤8 - 输出结果将显示如下图所示。