💽
CredentialsProviderError: Could not load credentials from any provider
AWS-SDK V3 NODE.js DynamoDBへの書き込み
AWS-SDK V3(node.js)でDynamoDBへ書き込むとき。
公式Documentの例はこんな感じになっている。
import { DynamoDBClient } from "@aws-sdk/client-dynamodb";
// Set the AWS Region.
const REGION = "REGION"; //e.g. "us-east-1"
// Create an Amazon DynamoDB service client object.
const ddbClient = new DynamoDBClient({ region: REGION });
export { ddbClient };
これを作って、ddbClient.send
したりする。
だがこれだとこのようなエラーになることがある。
CredentialsProviderError: Could not load credentials from any providers
credentialsがロードできないぞと。
こう書き直す。
import { DynamoDBClient } from '@aws-sdk/client-dynamodb'
const REGION = 'ap-northeast-1'
const ddbClient = new DynamoDBClient({
region: REGION,
credentials: { accessKeyId: 'FAKE', secretAccessKey: 'FAKE' },
endpoint: 'http://localhost:8000',
})
export { ddbClient }
FAKEのところには正しいものを入れよう。
Local DynamoDBの場合はそのままでOK。
Discussion