0
0

【AWS】Cloud9でNode.js用のAWS SDKを使ってHello Amazon Cognito

Posted at

はじめに

以下の Hello Amazon Cognito を Cloud9 で行う。

手順

1. Cloud9 を起動

  • インスタンスタイプは t3.micro (1 GiB RAM + 2 vCPU)

image.png

2. hello-cognito.js を作成

以下のサンプルコードを編集する。

  • 編集前(Hello Amazon Cognito をコピペ)
hello-cognito.js
import {
  paginateListUserPools,
  CognitoIdentityProviderClient,
} from "@aws-sdk/client-cognito-identity-provider";

const client = new CognitoIdentityProviderClient({});

export const helloCognito = async () => {
  const paginator = paginateListUserPools({ client }, {});

  const userPoolNames = [];

  for await (const page of paginator) {
    const names = page.UserPools.map((pool) => pool.Name);
    userPoolNames.push(...names);
  }

  console.log("User pool names: ");
  console.log(userPoolNames.join("\n"));
  return userPoolNames;
};
  • 編集後
hello-cognito.hs
- import {
+ const {
  paginateListUserPools,
  CognitoIdentityProviderClient,
- } from "@aws-sdk/client-cognito-identity-provider";
+ } = require("@aws-sdk/client-cognito-identity-provider");

const client = new CognitoIdentityProviderClient({});

const helloCognito = async () => {
  const paginator = paginateListUserPools({ client }, {});

  const userPoolNames = [];

  for await (const page of paginator) {
    const names = page.UserPools.map((pool) => pool.Name);
    userPoolNames.push(...names);
  }

  console.log("User pool names: ");
  console.log(userPoolNames.join("\n"));
  return userPoolNames;
};

helloCognito();

実行

$ node hello-cognito.js
test-userpool-20240710

メモ

  • Cloud9 には最初から SDK パッケージが入っていた
$ npm info @aws-sdk/client-cognito-identity-provider version
3.613.0
  • import ではなく require を使用する
    • ドキュメントのコードだと以下エラーが発生
/home/ec2-user/environment/work/hello-cognito.js:1
import {
^^^^^^

SyntaxError: Cannot use import statement outside a module

参考

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0