GET 버킷 (버킷의 객체 나열)
이 작업은 버킷에 있는 객체를 최대 1,000개까지 일부 또는 전부 반환합니다.
요청 예시:
GET /{bucket_name} HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
응답 예시 (성공):
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6D
Date: Mon, 17 Oct 2022 22:47:09 GMT
<ListBucketResult>
<Name>{bucket_name}</Name>
<Prefix></Prefix>
<Marker></Marker>
<Contents>
<Key>example-object.jpg</Key>
<LastModified>2022-10-17T01:56:20.000Z</LastModified>
<ETag>"bf1d937a4d46a19f3basdfeg5cc8b902"</ETag>
<Size>32347</Size>
<Owner>
<ID>canonical-user-id</ID>
<DisplayName>example-display-name</DisplayName>
</Owner>
<StorageClass>STANDARD</StorageClass>
</Contents>
</ListBucketResult>
GET 버킷 버전 관리
이 작업은 버전 관리 하위 리소스를 사용하여 버킷의 버전 관리 상태를 반환합니다.
- 공백: 버전 관리가 사용 설정된 적이 없으며 버킷이 버전 관리되지 않습니다.
- 사용 설정됨: 버전 관리가 사용 설정되어 있습니다.
- 정지됨: 이전에 버전 관리가 사용 설정되었으나 정지되었습니다.
요청 예시:
GET /{bucket_name}?versioning HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
X-amz-expected-bucket-owner: ExpectedBucketOwner (optional)
응답 예시 (성공):
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6D
Date: Mon, 17 Oct 2022 22:47:09 GMT
<VersioningConfiguration>
<Status>Enabled</Status>
</VersioningConfiguration>
GET 객체
이 작업은 버킷에서 객체를 가져옵니다.
요청 예시:
GET /{bucket_name}/{object_name} HTTP/1.1
Host: host
Content-MD5: request header
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
응답 예시 (성공):
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6D
Date: Mon, 17 Oct 2022 22:47:09 GMT
ETag: "33a64df551425fcc55e4d42a148795d9f25f89d4"
Content-Length: 13432
[13432 bytes of object data]
GET 객체 보관 (versionId 선택사항)
이 작업은 지정된 객체의 보관 모드와 객체 잠금 보관이 만료되는 날짜를 가져옵니다.
요청 예시:
GET /{bucket_name}/{object_name}?retention&versionId={VersionId} HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
X-amz-expected-bucket-owner: ExpectedBucketOwner (optional)
응답 예시 (성공):
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6D
Date: Mon, 17 Oct 2022 22:47:09 GMT
<Retention>
<Mode>COMPLIANCE</Mode>
<Timestamp>2022-10-17T01:56:20.000Z</Timestamp>
</Retention>
GET 객체 태그 지정 (versionId 선택사항)
이 작업은 태그 지정 하위 리소스를 사용하여 객체의 모든 태그를 반환합니다. versionId
매개변수를 지정하지 않으면 작업은 버전이 지정된 버킷에 있는 객체의 최신 버전에서 모든 태그를 반환합니다. 객체의 현재 버전이 삭제 마커인 경우 x-amz-deletemarker
응답 헤더가 true
로 설정된 MethodNotAllowed
상태가 반환됩니다.
요청 예시:
GET /{bucket_name}/{object_name}?tagging&versionId={VersionId} HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
X-amz-expected-bucket-owner: ExpectedBucketOwner (optional)
응답 예시 (성공):
HTTP/1.1 200 OK
Date: Mon, 17 Oct 2022 22:47:09 GMT
<Tagging>
<TagSet>
<Tag>
<Key>tag1</Key>
<Value>val1</Value>
</Tag>
<Tag>
<Key>tag2</Key>
<Value>val2</Value>
</Tag>
</TagSet>
</Tagging>
PUT 객체
이 작업은 버킷에 객체를 추가합니다. 버킷에 객체를 추가하려면 버킷에 대한 올바른 쓰기 권한이 있어야 합니다.
요청 예시:
PUT /{bucket_name}/{object_name} HTTP/1.1
Host: host
Content-MD5: request header
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Content-Length: 5233
Content-type: text/plain
[5233 bytes of object data]
응답 예시 (성공):
HTTP/1.1 100 Continue
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6C
Date: Mon, 17 Oct 2022 22:47:09 GMT
ETag: "33a64df551425fcc55e4d42a148795d9f25f89d4"
PUT 객체 태그 지정
이 작업은 태그 지정 하위 리소스를 사용하여 기존 객체에 태그 집합을 추가합니다.
요청 예시:
PUT /{bucket_name}/{object_name}?tagging HTTP/1.1
Host: host
Content-MD5: +b9TrAB9F8ne7rJpPkqavQ==
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Content-Length: {length}
Content-type: text/plain
<Tagging>
<TagSet>
<Tag>
<key>my-tag-key</key>
<value>my-tag-value</value>
</Tag>
</TagSet>
</Tagging>
응답 예시 (성공):
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6C
Date: Mon, 17 Oct 2022 22:47:09 GMT
DELETE 객체 (versionId 선택사항)
이 작업은 저장된 모든 위치에서 객체의 모든 사본을 삭제합니다.
요청 예시:
DELETE /{bucket_name}/{object_name}?versionId={VersionId} HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Content-type: text/plain
응답 예시 (성공):
HTTP/1.1 204 NoContent
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6C
Date: Mon, 17 Oct 2022 22:47:09 GMT
객체 태그 삭제 (versionId 선택사항)
이 작업은 태그 지정 하위 리소스를 사용하여 객체에서 모든 태그를 삭제합니다.
요청 예시:
DELETE /{bucket_name}/{object_name}?tagging&versionId={VersionId} HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Content-type: text/plain
응답 예시 (성공):
HTTP/1.1 204 NoContent
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6C
Date: Mon, 17 Oct 2022 22:47:09 GMT
멀티파트 업로드 만들기
이 작업은 멀티파트 업로드를 시작하고 업로드 ID를 반환합니다.
멀티파트 업로드를 사용하면 단일 객체를 파트 집합으로 추가할 수 있습니다. 각 부분은 객체 데이터의 연속된 부분입니다. 이러한 객체 부분을 독립적으로 어떤 순서로든 업로드합니다.
반환된 업로드 ID는 특정 멀티파트 업로드의 모든 파트를 연결하는 데 사용됩니다. 후속 업로드 파트 요청마다 이 업로드 ID를 지정합니다. 멀티파트 업로드 요청을 완료하거나 중단하는 최종 요청에서도 이 업로드 ID를 사용합니다.
요청 예시:
POST /{bucket_name}/{object_name}?uploads HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Content-type: text/plain
응답 예시 (성공):
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6D
Date: Mon, 17 Oct 2022 22:47:09 GMT
<InitiateMultipartUploadResult>
<Bucket>{bucket_name}</Bucket>
<Key>{object_name}</Key>
<UploadId>VXBsb2FkIElEIGZvciA2aWWpbmcncyBteS1tb3ZpZS5tMnRzIHVwbG9hZA</UploadId>
</InitiateMultipartUploadResult>
멀티파트 업로드 나열 (max-uploads 선택사항)
이 작업은 버킷의 진행 중인 멀티파트 업로드를 나열합니다.
요청 예시:
GET /{bucket_name}?uploads&max-uploads={max-uploads} HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Content-type: text/plain
응답 예시 (성공):
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6D
Date: Mon, 17 Oct 2022 22:47:09 GMT
<ListMultipartUploadsResult>
<Bucket>{bucket_name}</Bucket>
<KeyMarker></KeyMarker>
<UploadIdMarker></UploadIdMarker>
<NextKeyMarker>my-movie.m2ts</NextKeyMarker>
<NextUploadIdMarker>YW55IGlkZWEgd2h5IGVsdmluZydzIHVwbG9hZCBmYWlsZWQ</NextUploadIdMarker>
<MaxUploads>3</MaxUploads>
<IsTruncated>true</IsTruncated>
<Upload>
<Key>{object_name}</Key>
<UploadId>VXBsb2FkIElEIGZvciA2aWWpbmcncyBteS1tb3ZpZS5tMnRzIHVwbG9hZA</UploadId>
<Initiator>
<ID>{canonical-user-id}</ID>
<DisplayName>InitiatorDisplayName</DisplayName>
</Initiator>
<Owner>
<ID>{canonical-owner-user-id}</ID>
<DisplayName>OwnerDisplayName</DisplayName>
</Owner>
<StorageClass>STANDARD</StorageClass>
<Initiated>2022-10-17T01:56:20.000Z</Initiated>
</Upload>
</ListMultipartUploadsResult>
멀티파트 업로드의 파트 나열 (max-parts 선택사항)
이 작업은 특정 멀티파트 업로드에 대해 업로드된 부분을 나열하고 기본적으로 최대 1,000개의 업로드된 부분을 반환합니다. CreateMultipartUpload
요청으로 획득한 업로드 ID를 포함해야 합니다.
요청 예시:
GET /{bucket_name}/{object_name}?uploadId={uploadId}&max-parts={max-parts} HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Content-type: text/plain
응답 예시 (성공):
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6D
Date: Mon, 17 Oct 2022 22:47:09 GMT
<ListPartsResult>
<Bucket>{bucket_name}</Bucket>
<Key>{object_name}</Key>
<UploadId>{uploadId}</UploadId>
<Initiator>
<ID>{canonical-user-id}</ID>
<DisplayName>InitiatorDisplayName</DisplayName>
</Initiator>
<Owner>
<ID>{canonical-owner-id}</ID>
<DisplayName>OwnerDisplayName</DisplayName>
</Owner>
<StorageClass>STANDARD</StorageClass>
<PartNumberMarker></PartNumberMarker>
<NextPartNumberMarker></NextPartNumberMarker>
<MaxParts>{max-parts}</MaxParts>
<IsTruncated>true</IsTruncated>
<Part>
<PartNumber>2</PartNumber>
<LastModified>2022-10-17T01:56:20.000Z</LastModified>
<ETag>"7778aef8t866abc1fa1e8466f296d394"</ETag>
<Size>10485769</Size>
</Part>
<Part>
<PartNumber>3</PartNumber>
<LastModified>2022-10-17T01:56:20.000Z</LastModified>
<ETag>"aaab18db4cc2f85cedef854fccci24x8"</ETag>
<Size>10423760</Size>
</Part>
</ListPartsResult>
파트 업로드
이 작업은 객체의 멀티파트 업로드에서 파트를 업로드합니다.
요청 예시:
PUT /{bucket_name}/{object_name}?uploadId={uploadId}&partNumber={partNumber} HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Content-Length: 345442
Content-MD5: +b9TrAB9F8ne7rJpPkqavQ==
[part data omitted, 345442 bytes of part data]
응답 예시 (성공):
HTTP/1.1 200 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6D
Date: Mon, 17 Oct 2022 22:47:09 GMT
ETag: "33a64df551425fcc55e4d42a148795d9f25f89d4"
멀티파트 업로드 중단
이 작업은 멀티파트 업로드를 중단하고 추가 부분을 업로드할 때 업로드 ID를 무효화합니다. 이전에 업로드된 파트에서 사용된 스토리지가 해제됩니다.
요청 예시:
DELETE /{bucket_name}/{object_name}?uploadId={uploadId} HTTP/1.1
Host: host
X-Amz-Date: date
X-Amz-Content-SHA256: authorization string
Content-type: text/plain
응답 예시 (성공):
HTTP/1.1 204 OK
x-amz-id-2: iVmcB7OXXJRkRH1FiVq1151/T24gRfpwpuZrEG11Bb9ImOMAAe98oxSpXlknabA0LTvBYJpSIX
x-amz-request-id: B34E94CACB2CEF6C
Date: Mon, 17 Oct 2022 22:47:09 GMT