这是我的boto3命令,用于从S3存储桶中获取具有特定键的对象:
resp = s3client.get_object(Bucket='<>-<>', Key='MzA1MjY1NzkzX2QudHh0')
它给出以下错误:
botocore.errorfactory.NoSuchKey: An error occurred (NoSuchKey) when calling the GetObject operation: The specified key does not exist.
我已在存储桶中签入,并且密钥实际上存在
我错过了什么还是在这里做错了什么?
是的。我
MzA1MjY1NzkzX2QudHh0%0A
也尝试过。没用:/重命名您的对象。这是一个特殊的角色,可能会给您带来问题。
您的存储桶也有公开列表;因此,我能够导航到s3.amazonaws.com/cypher-secondarybucket/MzA1MjY1NzkzX2QudHh0%0A并获得“访问被拒绝”,而不是转到s3.amazonaws.com/cypher-secondarybucket/MzA1MjY1Nzkzt2 ' ”
将@ Dawny33添加
%0A
到密钥可能会导致对进行双重编码%250A
。\n
在键串中添加文字换行符。然后,像克里斯所说的那样,重命名密钥。特殊字符会引起悲伤。纠正这个:D