Fastify 中如何使用 Cookie?

推荐答案

在 Fastify 中使用 Cookie 非常简单。你可以通过 fastify-cookie 插件来管理 Cookie。以下是一个简单的示例:

-- -------------------- ---- -------
----- ------- - -------------------- ------- ---- ---

-- -- -------------- --
--------------------------------------------

-- -- ------
-------------------------- --------- ------ -- -
  --------------------------- -------------- -
    ------- --------------
    ----- ----
    ------- -----
    --------- -----
    ------- ---- -- - ----
  ---
  ------ - -------- ------- ---- --
---

-- -- ------
-------------------------- --------- ------ -- -
  ----- -------- - -------------------------
  ------ - -------- --
---

-- -----
-------------------- ----- -- -
  -- ----- -
    -----------------------
    ----------------
  -
---

本题详细解读

1. 安装 fastify-cookie 插件

首先,你需要安装 fastify-cookie 插件:

2. 注册插件

在 Fastify 应用中注册 fastify-cookie 插件:

3. 设置 Cookie

你可以使用 reply.setCookie 方法来设置 Cookie。该方法接受三个参数:

  • name: Cookie 的名称。
  • value: Cookie 的值。
  • options: 可选的配置项,如 domainpathsecurehttpOnlymaxAge 等。

4. 获取 Cookie

你可以通过 request.cookies 对象来获取客户端发送的 Cookie:

5. 删除 Cookie

要删除一个 Cookie,你可以将 maxAge 设置为 0 或者使用 reply.clearCookie 方法:

6. 安全性考虑

  • secure: 设置为 true 时,Cookie 只能通过 HTTPS 传输。
  • httpOnly: 设置为 true 时,Cookie 无法通过 JavaScript 访问,防止 XSS 攻击。
  • sameSite: 可以设置为 StrictLaxNone,用于防止 CSRF 攻击。

通过以上步骤,你可以在 Fastify 中轻松地管理和使用 Cookie。

纠错
反馈