当使用javascript SDK通过boto3创建python sdk时,listCollection返回空

时间:2019-04-13 14:40:19

标签: aws-sdk boto3 amazon-rekognition

我使用boto3使用以下代码创建了一个集合:

rekognition = boto3.client('rekognition',
        aws_access_key_id="__myclientId",
        aws_secret_access_key="__secret"
)
rekognition.create_collection(
     CollectionId='myPhotos'
)

在我使用python boto3中的以下代码获取它时显示为已创建:

response = rekognition.list_collections()
print(response)

但是当我尝试使用以下代码在nodeJs中使用Javascript SDK“ aws-sdk”获取相同的集合时,我得到的结果为空:

const AWS = require('aws-sdk');
AWS.config.update({
            accessKeyId : "__myclientId",
            secretAccessKey : "__secret",
            region: "us-east-1"
});

let rekognition = new AWS.Rekognition();
rekognition.listCollections({}, function (err, data)
{
     console.log(err, data);
});

响应JS:

{ CollectionIds: [], FaceModelVersions: [] }

1 个答案:

答案 0 :(得分:0)

解决了它在第一个代码中缺少该区域的问题。由于缺少区域,它假定了一些默认区域,因此,在us-east-1区域中搜索该集合以解决这种通过区域的需求时,该集合不会显示:

rekognition = boto3.client('rekognition',
        aws_access_key_id="__myclientId",
        aws_secret_access_key="__secret",
        region_name= "us-east-1"
)