编写与 Deno 关联的 WebSockets 应用程序

阅读时长 5 分钟读完

WebSockets 是一种在浏览器和服务器之间建立实时、双向通信的技术。它可以用于实时更新页面、聊天应用程序、游戏、股票报价等等。

Deno 是一个安全、现代化的运行时环境,用于在 JavaScript 和 TypeScript 中构建服务器端应用程序。它具有内置的模块管理器、安全的默认设置和强大的工具集,是 Node.js 的一个有力竞争对手。

在本文中,我们将学习如何使用 Deno 和 WebSockets 构建实时应用程序。

准备工作

在开始编写应用程序之前,我们需要安装 Deno 和 WebSockets 模块。使用以下命令进行安装:

这将安装最新版本的 Deno 和 WebSockets 模块。

编写服务器端代码

下面是一个简单的服务器端代码,用于接受来自客户端的 WebSocket 连接请求:

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

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

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

----- -------- ------------------- ---------- -
  ------------------- ------------
  --- ----- ------ ----- -- --- -
    -- ------- ----- --- --------- -
      -------------------- --------- -----------
      ---------------
    - ---- -- ------------------------------ -
      ------------------- ---------------
    -
  -
-
展开代码

该代码使用 Deno 的 serve 函数创建一个 HTTP 服务器,并接受 /ws 路径的 WebSocket 连接请求。当客户端连接成功后,将打印 Client connected。当客户端发送消息时,将打印 Message received 并将消息发送回客户端。当客户端断开连接时,将打印 Client disconnected

编写客户端代码

下面是一个简单的客户端代码,用于连接到服务器端并发送消息:

-- -------------------- ---- -------
--------- -----
------
  ------
    ----- --------------- --
    ---------------- ---------------
  -------
  ------
    ------ ----------- ------------ --
    ------- -------------------------------------
    ---- ------------------
    --------
      ----- ------ - --- ------------------------------------
      ---------------- - ------- -- -
        ------------------------------------------- -- ----- - ---------- - -------
      --
      -------- ------------- -
        ----- ------- - -----------------------------------------
        ---------------------
      -
    ---------
  -------
-------
展开代码

该代码使用 JavaScript 的 WebSocket 类连接到服务器端,并在消息到达时将其添加到页面中的 output 元素中。当用户单击 Send 按钮时,将使用 send 方法将输入框中的文本发送到服务器端。

运行应用程序

在终端中,使用以下命令启动服务器:

在浏览器中打开 index.html 文件,您应该会看到一个输入框和一个按钮。在输入框中输入一些文本并单击按钮,您应该会在页面中看到您发送的消息,并在服务器端的终端中看到 Message received

结论

在本文中,我们学习了如何使用 Deno 和 WebSockets 构建实时应用程序。我们编写了一个简单的服务器端代码,用于接受客户端的 WebSocket 连接请求,并一个简单的客户端代码,用于连接到服务器端并发送消息。这是一个很好的起点,您可以根据自己的需要进行修改和扩展。

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

纠错
反馈

纠错反馈