【发布时间】:2018-08-23 22:03:13
【问题描述】:
我有这样的boto客户端
client = boto3.client('rekognition', region_name="us-east-1")
我正在使用此客户端从图像中检测文本,并在没有 Rekognition api 的 AWS 区域部署代码,但提供了在客户端可用的区域名称。在执行/测试 lambda 函数时,它给出了
errorMessage": "Could not connect to the endpoint URL: \"https://rekognition.ap-south-1.amazonaws.com/"
为什么它选择我在 client-"us-east-1" 中提供的 ap-south-1
client = boto3.client('rekognition', region_name="us-east-1")
但是当我在本地使用 region-name:- ap-south-1 和客户端运行代码时
client = boto3.client('rekognition', region_name="us-east-1")
它运行得很好
但不在 AWS lambda 上运行
当两个区域相同时成功运行(us-east-1)
如果有人可以提供任何建议,那就太好了,很快就需要帮助!!!!!!!
【问题讨论】:
-
可以分享完整的代码吗?
-
您是否为 lambda 分配了相关的应用程序访问角色?
-
@mootmoot 是的,我已经分配了
-
你可以试试
sess= boto3.session(region_name="us-east-1")然后只创建rekognition客户端rekognition = sess.client('rekognition')。有时新的 boto3 服务客户端不会传递 region_name。
标签: amazon-web-services amazon-s3 aws-lambda amazon-rekognition aws-lambda-edge