在 Web 开发中,cookie 是一项非常重要的技术,它可以用于存储用户的信息,如用户名、浏览历史、购物车等。在 Express.js 中使用 cookie 是非常简单的。本文将介绍如何使用 cookie,并提供一些示例代码。
什么是 cookie?
在 Web 开发中,cookie 是一种用于存储数据的机制。它通常被用来存储与用户相关的数据,例如登录信息、购物车、浏览历史等。cookie 通常是通过浏览器发送给服务器的,并被服务器用于识别用户和维护会话。
设置和读取 cookie
在 Express.js 中,可以使用 res.cookie()
方法设置 cookie,如下所示:
------------ ------------- ---- - ---------------------- ------------ ---------------- --- ---- ------ ---
上面的代码将设置一个名为 username 的 cookie,其值为 john_doe。在客户端访问路由时,服务器将在响应头中添加 Set-Cookie 头部信息,告诉浏览器存储 cookie。
要读取 cookie,可以使用 req.cookies
对象,如下所示:
------------ ------------- ---- - --- -------- - --------------------- ------------------ --- - - ---------- ---
上面的代码将从客户端的 cookie 中读取 username,并将其发送到客户端。
设置 cookie 的过期时间
默认情况下,cookie 是会话级别的,这意味着它们存在于浏览器关闭时,或者服务器重启时会被删除。但是,可以通过设置 cookie 的过期时间来控制 cookie 的生命周期,如下所示:
------------ ------------- ---- - ---------------------- ----------- - ------- ------ --- -- ------ --- ------ -- ---------------- --- ---- ------ ---
使用 signed cookie
使用 signed cookie 可以防止 cookie 被篡改。对于需要保证数据安全的应用程序,使用 signed cookie 是非常重要的。要使用 signed cookie,需要在应用程序中配置一个 secretkey,如下所示:
--------------------------------------- -- -- ------ ---
使用 res.cookie()
方法设置一个 signed cookie,如下所示:
------------ ------------- ---- - ---------------------- ----------- - ------- ---- --- -- -- ------ ------ ---------------- --- ---- ------ ---
要读取 signed cookie,可以使用 req.signedCookies
对象,如下所示:
------------ ------------- ---- - --- -------- - --------------------------- ------------------ --- - - ---------- ---
删除 cookie
可以使用 res.clearCookie()
方法删除 cookie,如下所示:
----------------------- ------------- ---- - ---------------------------- ---------------- --- ---- ---------- ---
上面的代码将从客户端删除名为 username 的 cookie。
总结
在 Express.js 中,使用 cookie 是非常简单的。可以使用 res.cookie()
方法设置 cookie,使用 req.cookies
对象读取 cookie,使用 signed cookie 来保证数据安全。通过本文的介绍和示例代码,相信读者已经掌握了 cookie 的基本使用方法,并可以使用 cookie 存储用户数据。
来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/64953a1d48841e989427a610