Javascript 通过不同区域的 cognito 访问 dynamodb

Javascript access to dynamodb via cognito with different regions

我的认知区域是东京 (ap-northeast-1),而 DynamoDB 设置在悉尼 (ap-southeast-2)。我遇到的问题是,如果我配置

AWS.config.region = 'ap-northeast-1';

然后我可以访问凭据,但 AWS 假设我的数据库位于同一区域并且我得到:

POST https://dynamodb.ap-northeast-1.amazonaws.com/ 400 (Bad Request)

如果我配置

AWS.config.region = "ap-southeast-2";

然后我得到:

OPTIONS https://cognito-identity.ap-southeast-2.amazonaws.com/ net::ERR_NAME_NOT_RESOLVED

估计是因为找不到身份。

现在 Cognito 仅在 3 个区域可用,none 其中对应于我拥有的任何资源。

那么如何同时使用两者呢?

您可以为 Cognito 的区域设置 SDK 的全局配置,并使用 Service specific configuration 为其他区域实例化服务客户端。

//Set global region
AWS.config.region = 'ap-northeast-1';

//Get identity and credentials from Cognito

//Get dynamo db region specific client
var dynamoDB = new AWS.DynamoDB({region: "ap-southeast-2"});