在使用 Deno 构建 Web 应用程序时如何处理 cookie?

阅读时长 4 分钟读完

简介

Deno 是一个用于运行 JavaScript 和 TypeScript 的运行时环境。Deno 具有更好的安全性和更好的性能。随着 Deno 的不断成长,越来越多的开发者开始使用 Deno 构建 Web 应用程序。在这篇文章中,我们将深入讨论如何在 Deno 中处理 cookie。

什么是 cookie?

Cookie 是通过网络服务器用来保存客户端状态的一种技术。客户端是指使用 Web 浏览器等访问网络的用户。Cookie 是通过 Web 服务器向客户端发送的一个小型文本文件,其中包含着访问者的信息。例如,有些网站需要在浏览器中存储用户偏好设置或者购物车的内容,这时就可以使用 Cookie。

如何设置和读取 cookie

在 Deno 中设置和读取 cookie 有很多种方式。常见的一种方式是使用第三方模块 cookies

安装 cookies

可以使用以下命令安装 cookies

示例代码

下面的示例代码演示了如何在 Deno 中设置和读取 cookie。

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

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

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

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

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

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

在这个示例代码中,我们创建了一个 GET 和一个 POST 路由。当用户访问根路径时,我们会检查请求中是否有名为 name 的 Cookie,如果有,我们会返回 Hello ${name}!,否则会返回 Please enter your name.

当用户提交一个表单时,我们会从请求体中获取 name,如果存在 name,我们设置 Cookie,并返回 Hello ${name}!,否则返回 Please enter your name.

解读示例代码

ctx.cookies.get("name");

这个函数从请求中获取名为 name 的 Cookie。

ctx.cookies.set("name", "value");

这个函数设置一个名为 name,值为 value 的 Cookie。

如何删除 cookie

为了删除一个 Cookie,我们需要设置它的值为空字符串以及设置过期时间为过去的时间。下面的示例代码演示了如何删除一个名为 name 的 Cookie。

在这个示例代码中,我们设置了名为 name 的 Cookie 的值为空字符串,并设置它的过期时间为过去的时间,这样就删除了这个 Cookie。

结论

在使用 Deno 构建 Web 应用程序时,我们需要处理 Cookie,以便跟踪用户状态。在 Deno 中,可以使用第三方模块 cookies 来设置、读取、删除 Cookie。

参考文献

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/671e1d712e7021665ef5fada

纠错
反馈