我有一个boto3客户程序:

boto3.client('kms')

但是它发生在新机器上,它们动态地打开和关闭。
    if endpoint is None:
        if region_name is None:
            # Raise a more specific error message that will give
            # better guidance to the user what needs to happen.
            raise NoRegionError()

为什么会这样呢?为什么只有部分时间呢?

最佳答案

您必须以一种或另一种方式告诉boto3您希望在哪个区域创建kms客户端。可以使用region_name参数明确完成此操作,如下所示:

kms = boto3.client('kms', region_name='us-west-2')

或者,您可以在~/.aws/config文件中将默认配置文件与个人资料相关联,如下所示:
[default]
region=us-west-2

或者您可以使用如下环境变量:
export AWS_DEFAULT_REGION=us-west-2

但您确实需要告诉boto3使用哪个区域。

关于python - boto3客户端NoRegionError : You must specify a region error only sometimes,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40377662/

10-09 08:22