Deno 是一款全新的 JavaScript 和 TypeScript 运行时,它与 Node.js 相比有很多不同之处。在 Deno 中处理 HTML 表单提交需要使用一些特定的 API,本文将对此进行介绍并提供示例代码。
安装 Deno
在开始编写代码前,你需要先安装 Deno。你可以在官方网站 https://deno.land 上找到相关的安装指南。
处理 HTML 表单提交
在 Deno 中处理 HTML 表单提交需要使用标准库中的 http
模块。在下面的示例代码中,我们将创建一个 HTTP 服务器,监听在本地的 8080
端口上。当有 POST 请求提交到 /submit
路径时,我们将会解析其中的表单数据并在命令行输出。
-- -------------------- ---- ------- ------ - ----- - ---- ------- ----- ------ - ------- ----- ---- --- --- ----- ------ --- -- ------- - -- ----------- --- ------ -- ------- --- ---------- - ----- ------- - --- -------------- ----- -------- - -------------------- ------------------------ ---------------------- - -
在上面的代码中,我们首先使用 serve()
方法创建了一个 HTTP 服务器,并监听在本地的 8080
端口上。接着我们使用 for await...of
循环处理每一个请求,判断其中的方法和路径,对于符合条件的请求我们将会解析其中的表单数据并输出。
解析表单数据
当我们拿到了 POST 请求中的表单数据之后,还需要将其解析为具体的数据结构。在 Deno 中,我们可以使用 URLSearchParams
对象来解析表单数据。以下代码展示了如何将表单数据解析为一个对象:
const formData = new URLSearchParams(decoder.decode(await Deno.readAll(req.body))); const obj = {}; for (const [key, value] of formData.entries()) { obj[key] = value; } console.log(obj);
在上面的代码中,我们首先使用 URLSearchParams
将表单数据解析为一个对象。然后我们使用 for...of
循环遍历其中的每一项,将其设置为对象的单个属性。最后我们在命令行输出了这个对象。
总结
在 Deno 中处理表单提交需要使用标准库中的 http
模块。我们可以通过监听 HTTP 请求并解析其中的表单数据来处理表单提交。本文提供了示例代码方便开发者参考。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/64f4f41df6b2d6eab3dbd210