aws-sdk - listCollection 在使用 javascript sdk 时返回空,而它是通过 python 使用 boto3 创建的
问题描述
我使用 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: [] }
解决方案
解决了它缺少第一个代码中的区域。由于缺少区域,它假定一些默认区域,因此在 us-east-1 区域中搜索它时不会显示该集合,以解决传递区域的需要,如下所示:
rekognition = boto3.client('rekognition',
aws_access_key_id="__myclientId",
aws_secret_access_key="__secret",
region_name= "us-east-1"
)
推荐阅读
- custom-element - 防止在 lit-html/lit-element 中重用 DOM
- python - socket.gaierror: [Errno 11001] getaddrinfo failed" 在 python 中,同时使用简单的自定义 Web 浏览器
- postgresql - PostgreSQL 有没有办法将 PostGIS.ST_Contains() 与 PostGIS.ST_Collect() 一起使用?
- javascript - 在正文 onload 上运行两个 .withSuccessHandler()
- paperjs - 如何通过使用 PaperJS 消除无用点来连接连接的子路径?
- r - X[, colnames, drop = FALSE] 中的错误:下标越界
- python - 如何在 tkinter、枕头中添加一些透明的图像
- docker - 如何在子文件夹中使用 go.mod 构建 golang docker 映像?
- jquery - 如何在选择两个复选框中删除jQuery函数中的重复代码?
- rust - 为什么以下宏在调用时需要分号?