如何使用 Deno 构建 Webhook?

阅读时长 4 分钟读完

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 中的代码:

现在,我们可以在命令行窗口中调用 Deno 运行时并运行我们的 Webhook 服务。我们可以使用以下命令启动 Webhook 服务:

在此命令中,“--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 官方文档链接:

根据 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

纠错
反馈