2009-04-23 22 views
2

我一直在查看亞馬遜S3服務的使用情況報告,並注意到有一個DataTransfer-out-bytes收費的GetObject操作(好吧,我明白這一點)以及一個DataTransfer-用於HeadBucket操作的超字節費用。什麼是亞馬遜S3中的HeadBucket操作

什麼是HeadBucket,請求是什麼時候發生的?

歡呼

回答

4

這是一個HEAD請求一斗:

HEAD /my-s3-bucket 

這將基本上只是告訴你,一個水桶存在(200 OK),否(404未找到)。

例如:

# curl -v -X HEAD http://s3.amazonaws.com/fooXXXX 

* About to connect() to s3.amazonaws.com port 80 (#0) 
* Trying 72.21.211.144... connected 
* Connected to s3.amazonaws.com (72.21.211.144) port 80 (#0) 
> HEAD /fooXXXX HTTP/1.1 
> User-Agent: curl/7.18.2 (i486-pc-linux-gnu) libcurl/7.18.2 OpenSSL/0.9.8g zlib/1.2.3.3 libidn/1.10 
> Host: s3.amazonaws.com 
> Accept: */* 
> 
< HTTP/1.1 404 Not Found 
< x-amz-request-id: A21BF750F080A267 
< x-amz-id-2: SPQ7yX6Ln0Zgp0YULT/64ag9077nNnN25jH8PMLGMm/SbXPZ+FF3qFuiOyBfiktP 
< Content-Type: application/xml 
< Transfer-Encoding: chunked 
< Date: Thu, 23 Apr 2009 13:39:50 GMT 
< Server: AmazonS3 

比。

# curl -v -X HEAD http://s3.amazonaws.com/s3hub 

* About to connect() to s3.amazonaws.com port 80 (#0) 
* Trying 72.21.207.135... connected 
* Connected to s3.amazonaws.com (72.21.207.135) port 80 (#0) 
> HEAD /s3hub HTTP/1.1 
> User-Agent: curl/7.18.2 (i486-pc-linux-gnu) libcurl/7.18.2 OpenSSL/0.9.8g zlib/1.2.3.3 libidn/1.10 
> Host: s3.amazonaws.com 
> Accept: */* 
> 
< HTTP/1.1 200 OK 
< x-amz-id-2: E6OvrEMD35HpJjlBg0kB90H/uaQDX8qk0oXb+baOtDKIoMXmNwgIRSX2rDE5Urlb 
< x-amz-request-id: DAAAA11524A4A557 
< Date: Thu, 23 Apr 2009 13:43:01 GMT 
< Content-Type: application/xml 
< Transfer-Encoding: chunked 
< Server: AmazonS3 
< 
+1

好的,謝謝 - 那麼爲什麼會有與此相關的數據傳輸成本,如果它只是檢查桶是否存在?我正在使用第三方AMI,並假設這是提出要求。在將文件寫入存儲桶之前,是否可能會列出存儲桶? – undefined 2009-04-23 14:03:18