Deno 是一款由 Node.js 之父 Ryan Dahl 打造的新型 JavaScript 运行时工具。它使用 V8 引擎和 Rust 编写,具有安全、高效、支持 TypeScript 等特性。在使用 Deno 构建 Webhook 方面,优点非常显著:它可以轻松地处理 Webhook 的传入请求,同时可以直接在运行时中引用来处理该请求的所有依赖项。在本文中,我们将探讨如何使用 Deno 构建 Webhook。
准备工作
首先,我们需要确保安装了 Deno 运行时。在安装完 Deno 之后,我们还需要创建一个名为“webhook.ts”(也可以使用任何其他您喜欢的名称)的文件,以便在其中编写我们的 Webhook 代码。最后,我们需要将 webhook.ts 处理的端点 URL 上的服务运行起来,以便可以在处理 Webhook 时立即进行测试和监控。让我们快速构建一个简单的 Webhook,并深入了解如何使用 Deno 进行构建:
编写 Webhook 代码
首先,创建一个简单的 webhook.ts 文件并命名为您遵循的任何约定,例如您的 Webhook 名称。在代码中,我们将定义一个“Hello, World” Webhook,它只是返回一个“Hello World”响应,以便我们可以验证 Endpoint 正确显示在我们的设备上。以下是 webhook.ts 中的代码:
import { serve } from "https://deno.land/std/http/server.ts"; const s = serve({ port: 8888 }); console.log("http://localhost:8888/"); for await (const req of s) { req.respond({ body: "Hello World\n" }); }
现在,我们可以在命令行窗口中调用 Deno 运行时并运行我们的 Webhook 服务。我们可以使用以下命令启动 Webhook 服务:
deno run --allow-net webhook.ts
在此命令中,“--allow-net”标志非常重要,因为它会告诉 Deno 构建 Webhook 时需要验证和授予网络访问权限。现在,如果我们在浏览器中打开“http://localhost:8888/”,则应看到表示“Hello World”的响应。
处理 Webhook 请求
现在,我们已经了解了如何使用 Deno 构建 Webhook 并创建 “Hello World” Webhook 服务。接下来,我们需要编写代码以接收来自服务端点 URL 的 Webhook,并处理基于传入 Webhook 的参数进行操作。让我们快速编写代码来处理 GitHub HTTP POST Webhook 的示例,该 Webhook 利用我们之前写的 “Hello World” Webhook 形成基础。
-- -------------------- ---- ------- ------ - ----- - ---- --------------------------------------- ----- - - ------- ----- ---- --- -------------------------------------- --- ----- ------ --- -- -- - -- ----------- --- ------ -- ------- --- ---------- - ----- ------- - ----- ----------- ------------------------------------- ------------- ----- ------- --- - ---- - ------------- ----- ------ -------- --- - -
以下是所有可用 HTTP 方法的 Deno API 官方文档链接:
- https://deno.land/std/http/server.ts(import { serve } from ...)
根据 Deno API 中的内容编写 Webhook 适用于任何 HTTP 需求,我们还需要确定如何从 Webhook 发送到服务器的响应中有效处理所需的参数。在上面的示例代码中,我们了解了如何使用 Deno API 中的 JSON.stringify()函数直接记录请求参数负载,并通过将该参数传递给 res.respond()进行响应。
我们仅使用最基本的代码块,将其堆叠到一起以运行我们的 Webhook。定制设计基本的 HTTP API 它们的语法和请求格式因 Webhook 色彩不同而异;请确保在实际使用您的 Webhook 代码之前阅读有关特定的 Webhook 服务和 API 的文档,以确保您的代码符合所需规范。
结论
在本文中,我们介绍了如何使用 Deno 构建 Webhook 并处理传入 Webhook 请求的实用方法。现在,您应该可以轻松地开始使用 Deno 编写自己的 Webhook 代码。无论您是完全没有编程经验的初学者,还是深入内部的有经验的开发人员,使用 Deno 构建 Webhook 都可以为您带来显著的优势。请务必查看有关 Deno 代码的官方文档和示例代码,以了解更多信息,并开始创建自己的 Webhook。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/66f27815a44b36ee576603f6