Koa 面试题 目录

Koa 中如何获取 Cookie?

推荐答案

在 Koa 中,可以通过 ctx.cookies.get() 方法来获取 Cookie。具体用法如下:

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

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

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

本题详细解读

1. Koa 中的 Cookie 处理

Koa 提供了一个 ctx.cookies 对象来处理 Cookie 的读取和设置。ctx.cookies.get() 方法用于获取指定名称的 Cookie 值。

2. ctx.cookies.get() 方法

  • 语法: ctx.cookies.get(name, [options])
  • 参数:
    • name: 要获取的 Cookie 的名称。
    • options: 可选参数,用于指定 Cookie 的选项,如 signed(是否验证签名)等。
  • 返回值: 返回指定名称的 Cookie 值。如果 Cookie 不存在,则返回 undefined

3. 示例代码解析

在示例代码中,我们创建了一个 Koa 应用,并在中间件中使用 ctx.cookies.get('myCookie') 来获取名为 myCookie 的 Cookie 值。然后,我们将这个值返回给客户端。

4. 注意事项

  • 如果 Cookie 是通过 signed 选项设置的,那么在获取时也需要传递 signed: true 选项来验证签名。
  • 如果 Cookie 不存在,ctx.cookies.get() 将返回 undefined,因此在处理返回值时需要进行适当的检查。

通过以上方法,你可以在 Koa 应用中轻松获取客户端发送的 Cookie 值。

纠错
反馈