npm 包 await-connect 使用教程

介绍

await-connect 是一个便捷的 Node.js 模块,使使用 Node.js 的网络套接字更加容易,它使用 Promise 去代表套接字和提供可读写和可靠的 API。同时,await-connect 还支持使用 async/await 语法规则,再加上它在使用过程中的灵活性和易用性,让开发者在使用的时候十分的得心应手。

安装

在命令行中执行以下命令,即可安装 await-connect 模块。

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

用法

使用 await-connect,我们首先需要创建一个服务器实例。

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

其中,createServer 函数接受一个回调函数,用于处理新连接。当新连接建立后,我们会输出一句话“new connection!”和向客户端发送一个“hello there!”的消息。我们也注册了 socket 的 data 事件和 close 事件,在 data 事件中,我们输出从客户端接收到的数据;在 close 事件中,我们输出一句话“connection closed!”。最后,我们在服务器上监听端口 3000。

在客户端,我们可以通过以下代码来连接服务器。

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

这里我们使用的是 Node.js 的 net 模块去创建一个套接字连接服务器。在连接建立后,我们输出一句话“connected to server!”和向服务器发送一个“hello from the client!”的消息。我们同样在套接字上注册了 data 事件和 close 事件,在 data 事件中,我们输出从服务器接收到的数据;在 close 事件中,我们输出一句话“connection closed by server!”并关闭套接字。

使用了 await-connect 和 async/await,我们的代码就能被简化为如下代码。

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

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

这里使用了 async/await 代替了 Promise 的链式调用,使得代码更简洁易懂。

示例代码

我们通过如下代码建立一个基本的双向通信的 Server 和 Client,可以互相发送消息。

Server

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

Client

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

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

以上就是 await-connect 使用教程,希望能够帮助大家在 Node.js 的网络套接字编程中变得更为便捷!

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/6005596281e8991b448d6d80


猜你喜欢

  • Npm 包 perpusmsa 使用教程

    在前端开发中,我们经常需要发送短信来完成一些功能,比如验证码验证、订单通知等等。而 perpusmsa 就是一款非常好用的 npm 包,可以让我们轻松地发送短信。本篇文章将详细介绍 perpusmsa...

    2 年前
  • npm 包 simple-md2html 使用教程

    在前端开发中,Markdown 已经成为了写作、文档编写、博客撰写的标准格式。但是,在实际应用中,有些情况下需要将 Markdown 转换为 HTML 格式,以方便展示和发布。

    2 年前
  • npm 包 json-object-copy 使用教程

    在前端开发中,我们经常需要对一个 JSON 数据进行复制或修改。传统的方式是使用 JavaScript 的对象浅拷贝或深拷贝,但是这些方法有时会带来一些问题,比如无法复制原型属性或循环引用,或者操作过...

    2 年前
  • npm 包 maximize-canvas 使用教程

    在前端开发中,Canvas 是非常常用的一种技术。Canvas 可以通过 JavaScript 在浏览器中绘制图形,但是有时候我们希望 Canvas 不受页面大小的限制,而是随窗口大小自动最大化或者最...

    2 年前
  • npm 包 abacus-ext-account-plugin 使用教程

    在前端开发中,我们往往需要使用一些开源的工具库来提高开发效率。abacus-ext-account-plugin 就是一个非常实用的 npm 包,它可以帮助我们快速地实现账户扩展功能。

    2 年前
  • npm 包 abacus-ext-cf-broker 使用教程

    引言 npm 是 Node.js 的包管理工具,通过它可以让开发者更方便地管理 Node.js 的应用及其所依赖的包。在前端开发中,有时候会使用一些 Node.js 的包来辅助开发工作。

    2 年前
  • npm 包 abacus-ext-cmdline 使用教程

    前言 在前端开发过程中,我们经常会用到各种各样的工具和库,其中 npm 包是最常用的一种。在这里,我们将会介绍如何使用一个非常实用的 npm 包——abacus-ext-cmdline。

    2 年前
  • npm 包 cf-abacus-broker 使用教程

    简介 cf-abacus-broker 是一个用于 Cloud Foundry 平台的服务代理,它可以帮助你方便地提供计费、安全和监控功能,而无需编写原生的应用程序。

    2 年前
  • npm 包 freeboard-aws-iot-ws-mqtt 使用教程

    在前端开发中,常常需要使用一些第三方库或者工具来减轻开发的负担。而 freeboard-aws-iot-ws-mqtt 是一款用于与亚马逊 AWS IoT 服务通信的 npm 包,能够帮助开发者在前端...

    2 年前
  • npm 包 httpquery 使用教程

    在前端开发中,我们经常需要向服务器发送请求并获取数据。为了方便我们完成这些操作,开发者们开发了各种各样的工具包。其中,httpquery 就是一个非常实用的工具包,它可以方便地完成发送请求和解析服务器...

    2 年前
  • npm 包 arc-reg-exp 使用教程

    arc-reg-exp 是一个 npm 包,它提供了一个使用 ARC 格式(Advanced Regular Expression Language)编写的正则表达式解析器。

    2 年前
  • npm 包 bin-shebang 使用教程

    前言 npm (Node.js Package Manager) 是一个很有用的 JavaScript 包管理工具。通过 npm,我们可以方便地使用和分享别人编写的 JavaScript 包。

    2 年前
  • npm 包 awesome-cascader 使用教程

    概述 在 Web 开发中,级联选择器是一个常用表单组件。awesome-cascader 是一个实现了级联选择器的 npm 包,提供了丰富的 API 和可定制的 UI 方案,使用方便、灵活。

    2 年前
  • npm 包 abacus-ext-housekeeper 使用教程

    在前端开发中,我们经常使用第三方库和框架来加快开发速度和提升开发效率。而 npm 包是目前前端领域中最为流行和普及的包管理工具之一。本文将向大家介绍一个 npm 包——abacus-ext-house...

    2 年前
  • npm 包 dpd-mail 使用教程

    简介 npm 是 Node.js 的包管理工具,它可以让我们轻松地安装和管理 Node.js 模块和库。dpd-mail 是一个基于 Node.js 平台的 npm 包,它提供了一个邮件发送的 API...

    2 年前
  • npm包run-esx使用教程

    前言 随着前端技术的不断发展,前端构建工具也在不断地涌现。其中,npm包是前端开发中不可或缺的部分。npm包提供了各种各样的功能,让我们能够更加高效地完成开发任务。

    2 年前
  • npm 包 neutrino-preset-prettier-eslint 使用教程

    在前端开发中,代码风格一直是一个非常重要的话题。为了让代码风格一致并且更加容易阅读,我们通常需要使用代码格式化工具和代码规范检查工具。 在这篇文章中,我将介绍一个非常实用的 npm 包 neutrin...

    2 年前
  • npm 包 SmartClient-RPC 使用教程

    如果你是一名前端开发者,你可能会用到很多优秀的 npm 包,其中一个非常好用的包是 SmartClient-RPC。在本文中,我们将对这个 npm 包进行详细的介绍和使用教程,希望能对你的开发工作有所...

    2 年前
  • npm 包 2d-board 使用教程

    介绍 2d-board 是一个基于 Canvas 的 2D 游戏引擎,它提供了一套简单易用的 API,让开发者可以快速地创建、布局和渲染游戏中的各种元素,如图片、文本、按钮等等。

    2 年前
  • npm 包 rc-stree 使用教程

    npm 包 rc-stree 使用教程 简介 rc-stree 是一个基于 React 的树形控件库,使用方便,功能丰富,是构建前端页面时经常使用的一款 npm 包。

    2 年前

相关推荐

    暂无文章