npm 包 @aws-amplify/pubsub 使用教程

阅读时长 6 分钟读完

AWS Amplify 是一个全面的开发平台,为前端开发人员提供服务和工具,帮助构建快速、可靠的应用程序。其中,@aws-amplify/pubsub 是一种用于实现发布/订阅模式的npm包。该包提供了一组API,用于在AWS IoT Core和AWS AppSync等服务中创建实时数据通信。

本文将详细介绍如何使用 @aws-amplify/pubsub 包,包括安装、配置、使用和示例代码。

安装

首先,需要在已有的 Node.js 项目中安装 @aws-amplify/pubsub:

接下来,需要安装 amplify 和 aws-amplify 包。可以通过以下命令一次性安装它们:

配置

在使用 @aws-amplify/pubsub 之前,需要配置 AWS Amplify。这包括为您的应用程序设置 AWS 安全凭据和存储库设置。

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

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

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

其中:

  • identityPoolId:针对未经授权的用户提供临时凭据的 Amazon Cognito 身份池 ID。
  • region:AWS 区域。
  • userPoolId:与身份池关联的 Amazon Cognito 用户池 ID。
  • userPoolWebClientId:与身份池关联的 Amazon Cognito 用户池 Web 客户端 ID。
  • bucket:要在其中存储对象的 Amazon S3 存储桶名称。
  • aws_pubsub_region:AWS IoT 客户端将与其通信的区域。
  • aws_pubsub_endpoint:AWS IoT HTTPS 终端节点。

使用

启动应用程序后,可以使用以下方法发布和订阅主题:

发布主题

其中:

  • TOPIC_NAME:要发布的主题名称。
  • { message: 'Hello world!' }:要发布的消息内容。

订阅主题

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

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

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

其中:

  • TOPIC_NAME:要订阅的主题名称。
  • next:消息发生时要执行的函数。
  • error:发生错误时要执行的函数。
  • close:完成订阅时要执行的函数。

示例代码

以下是发送和接收实时消息的示例代码:

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

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

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

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

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

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

以上是使用npm包@aws-amplify/pubsub的详细教程,如果你想在你的应用程序中使用实时数据通信,这个包是非常有用和强大的。希望本文对学习和使用该包有所帮助。

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

纠错
反馈