npm 包 @aws-sdk/client-cognito-identity 使用教程

前言

AWS Cognito 是一项 AWS 的服务,它为应用程序提供了安全和用户身份验证。它简化了开发人员在应用程序中集成认证和授权的过程,同时为应用程序的用户提供了强大的身份验证选项。

在这篇文章里,我们将讨论如何使用 @aws-sdk/client-cognito-identity npm 包来访问 AWS Cognito 服务。我们将探索如何在 Node.js 中创建 Cognito 身份池、如何使用该身份池来认证(或未认证)的用户,并且我们将介绍一些常用的操作。

安装 @aws-sdk/client-cognito-identity

首先,我们需要在我们的 Node.js 项目中安装 @aws-sdk/client-cognito-identity npm 包。你可以使用以下命令进行安装:

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

这将在你的项目中安装这个包及其所有依赖项。

创建身份池

在使用身份池之前,我们需要在 AWS Cognito 上创建身份池。要创建身份池,我们需要使用 AWS 管理控制台。

  1. 登录到 AWS 管理控制台:https://console.aws.amazon.com/
  2. 导航到 Cognito 服务并选择“身份池”选项卡。
  3. 单击“新建身份池”按钮,在出现的屏幕上填写身份池的详细信息。

当你完成以上步骤并保存你的身份池后,AWS 将为你创建一个唯一的身份池 ID。现在,我们可以在 Node.js 中使用此 ID 来访问我们的身份池。

认证用户

在获取可以使用以前注册的用户的凭证之前,您首先必须验证用户是否已经注册并已通过 AWS Cognito 身份验证。 下面是一个认证用户的示例代码:

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

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

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

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

在此示例中,我们首先实例化了 CognitoIdentityClient,然后使用 getIdentityId() 方法从身份池中检索用户的身份 ID。在调用方法时,我们传入身份池 ID、身份验证提供程序和用户 ID token。

如果用户已通过身份验证,则 getIdentityId() 将返回用户的身份 ID。否则,该方法将引发错误。

列出身份

我们可以使用 AWS Cognito 身份池 API 的 ListIdentities 方法列出我们的身份池中的所有现有身份。下面是一个列出身份的示例代码:

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

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

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

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

在此示例中,我们首先实例化了 CognitoIdentityClient,然后使用 listIdentities() 方法获取我们身份池中的所有身份。在调用方法时,我们只需要传入身份池 ID。

添加身份

我们可以使用 AWS Cognito 身份池 API 的 CreateIdentityPool 方法创建新的身份。下面是一个添加身份的示例代码:

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

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

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

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

在此示例中,我们首先实例化了 CognitoIdentityClient,然后使用 createIdentityPool() 方法创建新的身份池。在调用方法时,我们传入身份池名称和是否允许未经身份验证身份的身份池。

一旦身份池成功创建,createIdentityPool() 将返回新的身份池 ID。

总结

在本文中,我们已经了解了如何使用 @aws-sdk/client-cognito-identity npm 包直接与 AWS Cognito 服务交互。我们学习了如何创建身份池、认证用户、列出身份和添加身份。希望这篇文章对你有帮助,欢迎在下面的评论区做出回复。

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


猜你喜欢

  • npm 包 @aws-sdk/json-builder 使用教程

    简介 AWS SDK for JavaScript是Amazon Web Services的官方软件开发工具包,提供了访问AWS的服务和资源的API。其中,@aws-sdk/json-builder是...

    4 年前
  • 使用 npm 包 @aws-sdk/json-error-unmarshaller 解析 AWS JSON 错误

    AWS(Amazon Web Services)提供了一系列的服务,在前端中我们常常需要使用 AWS 的服务。但是,当这些服务出现错误时,返回的错误信息以 JSON 格式返回,其中可能含有嵌套的对象和...

    4 年前
  • npm 包 @aws-sdk/json-parser 使用教程

    在前端开发过程中,我们经常需要将扁平化的 JSON 数据转换为嵌套的对象结构。这时候,@aws-sdk/json-parser 就是一个可以帮助我们实现这个目标的 npm 包。

    4 年前
  • npm包 @aws-sdk/protocol-json-rpc 使用教程

    AWS提供了一系列的 JavaScript SDK 用于与其云服务进行交互。在使用这些 SDK 的过程中,开发者需要了解协议层并且实现与 AWS 服务通信所需的协议。

    4 年前
  • npm 包 @aws-sdk/client-cognito-identity-browser 使用教程

    简介 @aws-sdk/client-cognito-identity-browser 是一个由 Amazon Web Services (AWS)提供的 JavaScript 客户端库,用于在浏览器...

    4 年前
  • npm 包 @aws-sdk/credential-provider-cognito-identity 使用教程

    介绍 Amazon Web Services (AWS) 是由亚马逊(Amazon)旗下公司提供的云计算服务,包括服务器、存储、数据库、分析、应用程序服务等。在前端开发中,我们可能需要使用 AWS S...

    4 年前
  • npm 包 @aws-amplify/core 使用教程

    简介 @aws-amplify/core 是一个由亚马逊 AWS 推出的 JavaScript 库,用于在前端项目中实现 AWS 服务的集成。该库提供了一个简单且易于使用的接口,用于实现与 AWS 服...

    4 年前
  • npm 包 dexie-export-import 使用教程

    简介 dexie-export-import 是一个用于导入和导出 Dexie.js 中数据库的 npm 包。 Dexie.js 是一个轻量级的 IndexedDB 封装库,可以方便地在浏览器和其他 ...

    4 年前
  • npm 包 @aws-amplify/datastore 使用教程

    简介 AWS Amplify 是一个开源 JavaScript 库,用于快速为应用程序添加功能,例如认证、存储、API 和和实时通信。其中 @aws-amplify/datastore 是其数据存储的...

    4 年前
  • npm 包 @aws-sdk/client-lex-runtime-service 使用教程

    介绍 @aws-sdk/client-lex-runtime-service 是 AWS 官方提供的与 Amazon Lex 交互的 JavaScript 软件开发工具包。

    4 年前
  • npm 包 @aws-amplify/interactions 使用教程

    前言 AWS Amplify 是一款使用 AWS 服务构建 Web 应用和移动应用的 JavaScript 库。其中,@aws-amplify/interactions 是 Amplify 库中的一部...

    4 年前
  • npm 包 @aws-sdk/client-comprehend 使用教程

    前言 随着云计算技术的普及,越来越多的企业开始将自己的应用部署在云端,这也导致了对于云计算服务的依赖度越来越大。AWS 作为全球领先的云计算服务供应商,AWS 提供了大量的云计算服务,其中包括了自然语...

    4 年前
  • npm 包 @aws-sdk/client-polly 使用教程

    前言 随着人工智能技术的发展,语音合成技术也越来越受到关注。作为一名前端开发者,我们可以使用 AWS 的 P●●● 服务来进行语音合成,而 @aws-sdk/client-polly 库就提供了方便的...

    4 年前
  • npm 包 @aws-sdk/client-rekognition 使用教程

    前言 AWS Rekognition 是一款免费的面部识别和分析服务,允许开发者以简单且经济实惠的方式向应用程序添加功能,以识别和分析图像中的面部、场景和物体。而 @aws-sdk/client-re...

    4 年前
  • npm 包 @aws-sdk/client-textract 使用教程

    前言 在云计算和人工智能的时代,短时间内处理大量复杂数据变得越来越重要。AWS Textract 是一个 Amazon Web Services 的机器学习服务,它可以从扫描的文档中提取文本和字符,并...

    4 年前
  • npm 包 @aws-sdk/client-translate 使用教程

    前言 在国际化应用的开发过程中,多语言翻译是一个十分重要的组成部分。AWS 提供了 Translate 服务,让我们可以轻易地将一个语言翻译成另一个语言,而 @aws-sdk/client-trans...

    4 年前
  • npm 包 @aws-crypto/crc32 使用教程

    在前端开发中,经常需要使用 CRC32 算法进行数据校验。而 AWS 开发了一个 npm 包 @aws-crypto/crc32,该包可以方便地对数据进行 CRC32 计算。

    4 年前
  • NPM包 @aws-sdk/util-utf8-universal 使用教程

    简介 在日常开发中,我们经常需要在前端中进行字符串编解码的操作。而在AWS的JavaScript SDK (@aws-sdk/client-s3, @aws-sdk/client-dynamodb等)...

    4 年前
  • npm 包 @aws-sdk/eventstream-marshaller 使用教程

    简介 @aws-sdk/eventstream-marshaller 是一个 AWS SDK for JavaScript 的包,它提供了一种转换 AWS EventStream 消息的方式。

    4 年前
  • npm 包 @aws-amplify/predictions 使用教程

    在前端开发中,常常需要使用一些机器学习或者预测服务,而 AWS 提供的 @aws-amplify/predictions npm 包提供了一种方便快捷的方法来实现这些服务。

    4 年前

相关推荐

    暂无文章