Rest 使用“邮递员”获取aws bucket内容列表;获取Bucket(版本2)";雷斯塔皮
我正在使用邮递员发送AWS S3 RestAPI“GetBucket(Version2)”以获取Bucket列表 bucket的名称是“test-bucket-1.ahadomain.com”(ahadomain.com是我在aws中命名bucket时使用的一个虚拟的不存在的域)。我使用的用户凭据具有进行S3调用的所有权限。我正在跟踪第页上的信息- 我正在使用端点: 我正在发送以下标题:内容类型、主机、X-Amz-Content-Sha256、X-Amz-Date、授权 我需要添加“列表类型”作为查询参数还是作为标题?如果作为查询参数,如何在url中声明它。 我得到以下响应,其中不包含内容列表,只包含有关bucket本身的信息:Rest 使用“邮递员”获取aws bucket内容列表;获取Bucket(版本2)";雷斯塔皮,rest,amazon-web-services,amazon-s3,Rest,Amazon Web Services,Amazon S3,我正在使用邮递员发送AWS S3 RestAPI“GetBucket(Version2)”以获取Bucket列表 bucket的名称是“test-bucket-1.ahadomain.com”(ahadomain.com是我在aws中命名bucket时使用的一个虚拟的不存在的域)。我使用的用户凭据具有进行S3调用的所有权限。我正在跟踪第页上的信息- 我正在使用端点: 我正在发送以下标题:内容类型、主机、X-Amz-Content-Sha256、X-Amz-Date、授权 我需要添加“列表类型”作
<?xml version="1.0" encoding="UTF-8"?>
<ListAllMyBucketsResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Owner>
<ID>6893100ea2b48696e8ccc3aa17414f4325cf59b574474ad9de0bcb0d139590c9</ID>
<DisplayName>ahmedsmail</DisplayName>
</Owner>
<Buckets>
<Bucket>
<Name>test-bucket-1.ahadomain.com</Name>
<CreationDate>2017-09-06T06:36:15.000Z</CreationDate>
</Bucket>
</Buckets>
</ListAllMyBucketsResult>
6893100EA2B48696E8CCC3AA17414F4325CF59B5744744AD9DE0BCB0D139590C9
艾哈迈德斯梅尔
test-bucket-1.ahadomain.com
2017-09-06T06:36:15.000Z
任何帮助都将不胜感激
谢谢,,
Ahmed.您可以执行以下操作:
注意:如果存储桶的区域不在us-east-1中,请更改s3.amazonaws.com以更正该区域的s3端点李>
A.类型:AWS签名
BAccessKey:
C秘钥:
DAWS地区:美国东部1号
注意:如果这不是存储桶的区域,请更改此选项
E服务名称:s3
F选中“将助手数据保存到请求”
选择的答案绝对有效! 多谢各位
Tool: Postman
function: Get
Address: https://s3.us-west-1.amazonaws.com/XXXXXXXX/?list-type=2
Region: I am on us-west-1, **this is most common mistake people miss**.
看起来像下面,得到一个200
GET/XXXXXXXX/?列表类型=2 HTTP/1.1
主持人:s3.us-west-1.amazonaws.com
授权:AWS4-HMAC-SHA256凭证=XXXXXXXXXXXXXXXXXX/00000000/us-west-1/s3/AWS4_请求,签名头=主机;x-amz-content-sha256;x-amz-date,签名=;lkasdfl;kajsdfk;jasd;kfjas;ldkfjas;ldkfja;skjdf;askdjf;lkasdjf
-方法
https://test-bucket-1.s3.us-east-1.amazonaws.com
不正确。这是其他人的桶,它恰好是禁用的桶。。。该服务将您的请求解释为列出存储桶而不是对象的请求。您需要为您的bucket区域使用一个端点:路径中有bucket名称。只是好奇,为什么/如何告诉bucket被禁用?在我的AWS控制台中,bucket“test-bucket-1.ahadomain.com”列在美国西部(北加利福尼亚)地区。在这种情况下,我使用以下端点:仍然获得相同的输出,关于bucket的信息,而不是内容:(对,我告诉您您的端点不正确。您的端点应该是s3-us-west-1.amazonaws.com/test-bucket-1.ahadomain.com?list type=2或左侧的整个bucket名称test-bucket-1.ahadomain.com.s3-us-west-1.amazonaws.com。另一个端点指的是一个被禁用的bucket,简称为“test-bucket-1”这不是你的bucket,是其他人的,并且似乎被禁用。你的不是。当我使用URL-,我会收到消息“连接到…时出错”基本上是URL格式的问题。当我使用URL-,我会收到消息说我应该使用左边有bucket名称的URL(在本评论开头注明)。邮递员不能使用左边有桶名的URL吗?左边有点的桶名在https中不起作用。只有http。我以前试过这种方法,但不起作用。放置“.ahadomain.com”url中的错误。编辑了我的答案。我清除了所有字段,重新输入了所有字段,Rest API调用正在工作。我阅读了关于检查“将帮助程序数据保存到请求”的内容,但无法理解它。你知道这意味着什么或它的好处吗?顺便说一句,谢谢你的帮助。很抱歉我的回复太晚了。我相信这一点“将助手数据保存到请求”是向请求添加身份验证,我认为在通过API向AWS发送请求时需要这样做。