面向對象存儲oos教程說明_第1頁
面向對象存儲oos教程說明_第2頁
面向對象存儲oos教程說明_第3頁
面向對象存儲oos教程說明_第4頁
面向對象存儲oos教程說明_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

-.z.OOS客服腳本OOS根本知識1.1什么是OOS"面向對象存儲〔Object-OrientedStorage,OOS〕是中國電信為客戶提供的一種海量、彈性、高可用、高性價比的存儲效勞,是一種開放式的存儲效勞。1.2OOS根本概念?面向對象存儲的主要概念有:Account〔賬戶〕、Service〔效勞〕、Object〔對象〕和Bucket〔對象容器〕。它們之間的關系如下列圖所示。在使用OOS之前,首先需要在.ctyun.注冊一個賬號〔Account〕,注冊成功之后,OOS會為該賬號提供效勞〔Service〕,在該效勞下,用戶可以創(chuàng)立1個或多個對象容器〔Bucket〕,每個對象容器中可以存儲不限數(shù)量的對象〔Object〕。Account在使用OOS之前,需要在.ctyun.注冊一個賬號〔Account〕。注冊時、密碼和聯(lián)系方式、用戶名是必填項。注冊成功之后,用戶可以用該賬號登錄并使用OOS效勞。ServiceService是OOS為注冊成功的用戶提供的效勞,該效勞為用戶提供彈性可擴展的存儲空間及上行和下行流量。用戶可以對存儲空間和能力進展管理,例如,文件的上傳下載、文件的保存、存儲空間的訪問控制等。BucketBucket是存儲Object的容器。面向對象存儲的每個Object都必須包含在一個Bucket中。Bucket不能嵌套,每個Bucket中只能存放Object,不能再存放Bucket。每個用戶最多可以建立10個Bucket,并且在創(chuàng)立Bucket時需要設定其操作權限。用戶只有對Bucket擁有相應的權限,才可以對其進展操作,這樣保證了數(shù)據(jù)的平安性,防止非授權用戶的非法訪問。Bucket的命名規(guī)*如下:對象容器〔Bucket〕的命名規(guī)*是:Bucket名稱必須全局唯一Bucket名稱長度介于3到63字節(jié)之間Bucket名稱可以由一個或者多個小節(jié)組成,小節(jié)之間用點〔.〕隔開各個小節(jié)需要:只能包含小寫字母、數(shù)字和短橫線〔-〕必須以小寫字母或者數(shù)字開場必須以小寫字母或者數(shù)字完畢Bucket名稱不能是IP地址形式〔如〕Object用戶存儲在OOS上的每個文件都是一個Object。文件可以是文本、圖片、音頻、視頻或者網(wǎng)頁。OOS支持的單個文件的大小從1字節(jié)到5T字節(jié)。用戶可以上傳、下載、刪除和共享Object。此外用戶還可以對Object的組織形式進展管理,將Object移動或者復制到目標目錄下。OOS有什么特點?彈性擴展,按需付費對用戶來說,OOS是一種低本錢的存儲資源,并且可以無限擴容,用戶只需根據(jù)所使用的存儲量進展付費即可,節(jié)約了本錢。平安可靠OOS采用多級加密數(shù)據(jù),對用戶數(shù)據(jù)進展分片加密保存,保證用戶數(shù)據(jù)的平安性。性能可靠OOS采用高可用的效勞集群及動態(tài)負載均衡,保證用戶順利度過訪問頂峰。快速部署,便捷接入用戶只需在天翼云注冊即可使用OOS效勞,部署便捷。同時,OOS采用統(tǒng)一的應用程序編程接口為用戶訪問OOS資源提供了便捷的接入通道。1.4OOS適合哪方面的應用?OOS主要適合以下類型的應用:〔1〕企業(yè)、財務數(shù)據(jù)的存儲、備份和歸檔。〔2〕交通錄像、監(jiān)控錄像、呼叫中心的效勞錄音、檔案管理、信息存儲、托管效勞等?!?〕互聯(lián)網(wǎng)在線視頻、網(wǎng)絡游戲、電子商務、門戶及社交類應用的文件、音視頻、圖片存儲。〔4〕中小型企業(yè)的靜態(tài)托管。1.5OOS適合存儲哪些文件?OOS適合存儲論壇與軟件應用中的附件、高清圖片、音視頻、備份文件等,及各種APP應用、多終端同步軟件、網(wǎng)盤下載站的文件存儲,更詳細信息參考:oos.ctyun./oos/product/e*ample.html1.6可對OOS的數(shù)據(jù)做哪些操作?1〕創(chuàng)立、查看、羅列、刪除Bucket。2〕修改、獲取Bucket的訪問權限。3〕上傳、查看、羅列、刪除Object。4〕訪問時支持If-Modified-Since和If-Match等HTTP參數(shù)。1.8如何訂購OOS?您只需在天翼云官方上注冊賬號即可使用OOS效勞,進入【產(chǎn)品中心】,選擇【對象存儲】,點擊【我要開通】,即可收到開通成功的短信確認。進入控制臺后即可使用oos。1.9OOS怎么收費,有哪些計費項?收費項包括:存儲容量、流出流量和請求次數(shù)。1〕存儲容量計費:按用戶數(shù)據(jù)占用的存儲空間容量收取費用;2〕流出流量計費:按用戶存儲數(shù)據(jù)被調用或下載產(chǎn)生的流量收取費用;3〕請求次數(shù)計費:按照各種請求的次數(shù)收取費用??圪M方式:按天扣費,每晚12:00按用戶的使用量進展扣費。欠費說明:OOS為每位用戶提供一定的信用額度,當您處于欠費狀態(tài),但未超過信用額度時,OOS會發(fā)提醒您進展充值。當您欠費金額超過信用額度時,假設您24小時之內仍未進展充值,OOS效勞將自動停頓。而您所占用的存儲空間的這局部資源仍會繼續(xù)按日扣費,因此欠費余額會累計。您可以在30天內充值補足欠費后,效勞會自動開啟,可以繼續(xù)使用。欠費超過30天,將視為您主動放棄OOS存儲效勞,存儲空間將被回收,存儲空間內的數(shù)據(jù)會被清理,數(shù)據(jù)不可恢復。價格列表容量價格規(guī)格標準價格元/G/天元/G/月1GB0.022約0.65流量價格規(guī)格標準價格〔元/GB〕1GB0.55請求次數(shù)標準規(guī)格標準價格〔元/GB〕GET/HEAD請求0.01元/萬次請求其它請求0.01元/千次請求1.10OOS數(shù)據(jù)訪問方式有哪些?1〕通過OOS門戶進展訪問;2〕通過HttpRESTAPI接口進展訪問;3〕通過OOSSDK進展編程;4〕通過OOS備份客戶端進展訪問;5〕通過OOS推薦的第三方工具〔如webdrive,s3fs等〕進展訪問;1.11OOS對文件格式有無要求?對文件格式?jīng)]有要求1.12OOS平安性怎么保障?1〕在用戶訪問層面,所有針對OOS的數(shù)據(jù)請求都需要進展簽名驗證,OOS提供全方位的訪問控制策略,使對象的擁有者對該對象有靈活的訪問控制權。2〕在數(shù)據(jù)傳輸層面,不管是通過Web門戶還是REST接口,用戶的數(shù)據(jù)訪問和操作都可以通過HTTPS協(xié)議進展,以確保數(shù)據(jù)傳輸中沒有平安死角。3〕在數(shù)據(jù)存儲層面,OOS將用戶數(shù)據(jù)自動切片,進展分布式保存,并且對每片數(shù)據(jù)進展簽名,即使數(shù)據(jù)被盜,沒有用戶的賬號信息依然無法對數(shù)據(jù)進展破解,這樣就充分保證了數(shù)據(jù)在存儲層面的平安性。4〕在OOS系統(tǒng)的運維層面,通過利用中國電信的"虛擬云桌面〞技術,運維人員無法直接訪問生產(chǎn)系統(tǒng),而必須一個可錄像的"虛擬桌面〞才能訪問,運維人員的一舉一動都將被記錄在案。5〕在數(shù)據(jù)中心的運維層面,中國電信具備全球最先進的數(shù)據(jù)中心管理和運營能力。OOS部署在8級抗震、一級耐火、一級防水、通過ISO27001認證的的數(shù)據(jù)中心內部,與中國電信通信樞紐數(shù)據(jù)中心〔武警守衛(wèi)〕同級別,具備完善的門禁制度、人員訪控制度、設備巡檢制度,確保物理層面的萬無一失。1.13OOS試用時間多長?我們通過給客戶提供信用額的方式讓用戶免費試用OOS,試用時間不受限制,直到用戶消費完信用額度為止,信用額度的消費跟OOS計費方式一樣。目前的初始信用額度是100元。1.14OOS與自建效勞器存儲比照彈性擴展云存儲按使用量計費,用戶無需考慮由于業(yè)務需求的增長而擴大初期投資本錢。降低本錢使用OOS,您可以根據(jù)業(yè)務需求確定資源投入,防止投資和運營本錢〔電費、維護本錢等〕浪費。平安可靠云存儲通過以下幾種方式來保證數(shù)據(jù)平安:通過SSL加密技術和MD5校驗技術,保障數(shù)據(jù)傳輸?shù)钠桨餐ㄟ^數(shù)據(jù)自動切片、分布保存、每片簽名等技術,保障數(shù)據(jù)存儲的平安通過用戶鑒權、ACL訪問控制等方式,保障數(shù)據(jù)使用的平安通過7*24的專業(yè)運維團隊、原廠的金牌效勞,保障數(shù)據(jù)運維的平安自建存儲需要開發(fā)者自己從技術角度去實現(xiàn)平安防護,比方防火墻配置、加密技術等,對開發(fā)者要求較高,而且容易出現(xiàn)平安漏洞。而OOS有專業(yè)的技術平安團隊進展平安防護,同時運維團隊7*24小時的平安監(jiān)控也能及時得彌補平安漏洞。2、OOSFAQ2.1OOSAPI文檔"Date〞字段的GMT格式說明?在OOSAPI文檔中,使用到"DATE〞表示時間的字段,必須為HTTP1.1中支持的GMT格式。有四種格式:EEE,dMMMyyyyHH:mm:ss'GMT'EEE,dMMMyyyyHH:mm:ssZEEE,dMMMyyyyHH:mm:ss'GMT'ZEEE,dMMMyyyyHH:mm:ssz字母日期或時間元素表示例如y年沒有JSON格式的,返回結果是*ML格式的。2.14如何進展大文件上傳?1〕有開發(fā)能力的用戶可以通過OOSAPI或SDK來操作。?5GB以下文件或網(wǎng)絡速度好的用戶,可以使用PUTobject。?5GB以上或網(wǎng)絡速度不好并且文件在100M以上的用戶推薦使用MultipartUpload2〕無開發(fā)根底客戶可下載OOS客戶端,請參考oos.ctyun./oos/product/tools.html2.15object怎么改名"兩種方法可以實現(xiàn):1.您可以刪除原來的文件,上傳新命名的文件也能到達改名的效果。2.您可以通過copyobjcet源文件復制成為一個新名字的文件,再把源文件刪除即可。2.16OOS中可以重命名bucket嗎?OOS暫不支持bucket的重命名,假設需要其他名稱,建議您重新創(chuàng)立bucket。OOS是否支持object遷移?OOS提供了COPYobjcet的功能,您可以將原bucekt下的文件COPY到新bucket即可。2.18javasdk中的OOSclient對象是否是線程平安的?是線程平安的2.19OOS是否支持多個object打包下載?目前OOS不支持多個object打包下載。2.20OOS返回的文件網(wǎng)絡路徑,域名都是ctyun的嗎"可以把bucketname設置為域名,配置DNS,把域名指向oos.ctyunapi.,這樣就可以通過域名訪問object了。2.21OOS中url中可以實現(xiàn)授權文件上傳嗎?目前沒有此功能2.22如何使用JAVASDK源代碼?上提供了sdk的源碼下載,可以將其導入的Eclipse等IDE工具中。2.23為什么bucket下的文件都刪除了,卻還能查看到占用的空間,并且bucket也刪除不了?請確認您是否使用過UploadMultipart

的功能,如使用過,建議您可以通過UploadsList

Multipart

查看是否存在已經(jīng)被初始化但是未被plete或者Abort的

Multipart

Upload的part。如果有,則需再執(zhí)行Abort

Multipart

Upload〔來終止上次操作的

Multipart

Upload,該命令會自動刪除未完成的part〕。因為未完成合并的part,無法形成objcet,所以通過objectlist是看不到這些殘留的part,但這些都會產(chǎn)生占用空間量。2.24OOS支持bucket作為三級域名的訪問方式嗎?支持,三級域名外鏈訪問方式:bucketname.oos.ctyunapi./object例如:cloudstorage.oos.ctyunapi./pujing.jpg普通外鏈訪問方式:oos.ctyunapi./bucketname/object例如:oos.ctyunapi./cloudstorage/pujing.jpg注:如果你的bucket里面有下劃線"_",則由于不符合規(guī)*,無法做為三級域名使用,只能使用普通外鏈訪問方式。2.25OOS中有好幾個bucket,是否可以實現(xiàn)不同域名ame到不同bucket,如何操作?可以,配DNS就可以,AME方法:例如:您的bucket名為cloudstorage,您的objcet為"image/pujing.jpg"外鏈訪問地址:oos.ctyunapi./cloudstorage/image/pujing.jpg您的AME

.myweb.

ame

oos.ctyunapi.

即可訪問地址就可以映射:.myweb./cloudstorage/image/pujing.jpg2.26什么是API密鑰OOS的API密鑰是用來請求OOS資源時做驗證用的,您可以在OOS賬戶中心的密鑰管理模塊查看和修改。2.27可以綁定域名嗎?可以2.28是否防盜鏈有,您可以通過配置Bucket的Policy〔平安策略〕來實現(xiàn),具體參見這里2.29OOS能否解決互聯(lián)互通問題?1、OOS暫不支持互聯(lián)互通,但支持電信/聯(lián)通雙線網(wǎng)絡;2、后期會解決互聯(lián)互通問題。2.30存儲容量上限?一個Object最大支持5T,您也可以通過分段上傳來實現(xiàn)超大文件的上傳,文件大小沒有限制。2.31是否支持壓縮圖片?OOS目前暫不支持圖片壓縮,后期會考慮提供支持。2.32是否支持批量上傳您可以再OOS自效勞門戶的控制臺中進展文件批量上傳,也可以通過編寫程序或使用第三方支持工具〔s3fs,crOOSftp等〕實現(xiàn)批量上傳。2.33OOS效勞是否限制用戶的并發(fā)請求數(shù)?OOS不會限制用戶的并發(fā)請求數(shù)2.34OOS接口能否在pad,android使用OOS提供基于HTTP的的標準REST接口,可以跨平臺使用。2.35OOS是否可以掛載到云效勞器當硬盤用"可以,您可以通過第三方軟件工具s3fs將OOS掛載到云效勞器。2.36最小計費單位"OOS的最小計量單位是"分〞2.37OOS支持FTP嗎?支持,您可以使用第三方工具crOOSFtp來訪問OOS;2.38oos數(shù)據(jù)怎么備份?OOS底層默認對數(shù)據(jù)進展三次備份,您也可以通過將數(shù)據(jù)遷移到不同的bucket來進展備份;2.39支持的開發(fā)規(guī)*?接口規(guī)*?OOS采用兼容亞馬遜S3的應用程序編程接口,支持通過基于Http的RESTAPI來訪問OOS效勞。詳情請參見OOS開發(fā)者文檔;2.40云存儲計算器效勞上有:.ctyun./product/oos3、工具下載地址OOS客戶端工具論壇上:bbs.ctyun./forum.php"mod=viewthread&tid=21&e*tra=page%3D1oos.ctyun./oos/product/bpinfo.html4、OOS的錯誤響應當用戶訪問OOS出現(xiàn)錯誤時,OOS會返回給用戶相應的錯誤碼和錯誤信息,便于用戶定位問題,并做出適當?shù)奶幚?。錯誤代碼列表錯誤碼描述HTTP狀態(tài)碼NotVerify用戶未激活403ForbiddenInvalidArgument無效的請求參數(shù)400BucketAlreadE*ists請求的bucket的name已經(jīng)不可用,請選擇不同的名字嘗試。409ConflictBucketNotEmpty試圖刪除的的bucket非空409ConflictInvalidAccessKeyId你使用的OOSID不存在403ForbiddenInvalidBucketName指定的bucket無效400BadRequestInvalidURI無法解析指定的URL400BadRequestMethodNotAllowed指定的方法不允許操作該資源405MethodNotAllowedMissingContentLength在HTTP頭中必須提供ContentLength411lengthrequiredRequestTimeTooSkewed請求的時間和效勞器時間相差15分鐘以上403BadRequestNoSuchBucket指定的bucket不存在404NotFoundNoSuchKey指定對象的Key不存在404NotFoundSignatureDoesNotMatch我們計算出的請求中的簽名與用戶提供的簽名不一致。檢查OOS賬戶平安403ForbiddenTooManyBuckets你試圖創(chuàng)立的bucket超出允許*圍dRequest5、開放接口規(guī)*5.1、關于Service的操作GetService(ListBucket)對于做Get請求的效勞,返回請求者擁有的所有Bucket,其中"/〞表示根目錄。該API只對驗證用戶有效,用戶需要使用有效的KeyID在OOS中注冊,匿名用戶不能執(zhí)行該操作。GET/HTTP/1.1Host:oos.ctyunapi.GET/HTTP/1.1Host:oos.ctyunapi.Date:Wed,01Mar201212:00:00GMTAuthorization:AWSmailaddressemail.:*QE0diMbLRepdf3YB+FIE*AMPLE=返回例如<"*mlversion="1.0"encoding="UTF-8""><ListAllMyBucketsResult*mlns="doc.oos.ctyun.c/2012-09-01"><Owner><ID>bcaf1ffd86f461ca5fb16fd081034f</ID>返回例如<"*mlversion="1.0"encoding="UTF-8""><ListAllMyBucketsResult*mlns="doc.oos.ctyun.c/2012-09-01"><Owner><ID>bcaf1ffd86f461ca5fb16fd081034f</ID><DisplayName>displayName</DisplayName></Owner><Buckets><Bucket><Name>sample1</Name><CreationDate>2012-09-01T16:45:09.000Z</CreationDate></Bucket><Bucket><Name>sample2</Name><CreationDate>2012-09-01T16:41:58.000Z</CreationDate></Bucket></Buckets></ListAllMyBucketsResult>Object的操作有:PutObject、GetObject、HeadObject、DeleteObject。PutObjectPutObject用于上傳文件。請求例如在名叫myBucket的bucket中,存儲一*叫my-image.jpg的圖片。PUT/my-image.jpgHTTP/1.1PUT/my-image.jpgHTTP/1.1Host:myBucket.oos.ctyunapi.Date:Mon,03Sep201217:50:00GMTAuthorization:AWSmailaddressemail.:*QE0diMbLRepdf3YB+FIE*AMPLE=Content-Type:image/ipegContent-Length:11434[11434bytesofobjectdata]返回例如HTTP/1.1100ContinueHTTP/1.1100ContinueHTTP/1.1200OK*-amz-request-id:0A49CE4060975EACDate:Mon,03Sep201217:50:00GMTETag:"1b2cf535f27731c974343645a3985328"Content-Length:0Connection:closeServer:CTYUN如果Head中沒有參加Contentlength參數(shù),會返回411LengthRequired錯誤。返回例如:如果試圖添加的Object所在的Bucket不存在,返回404NotFound錯誤。如果試圖添加的Object所在的Bucket沒有訪問權限,返回403Forbidden錯誤。注意:如果試圖添加的Object的同名文件已經(jīng)存在,并且有訪問權限。新添加的文件將覆蓋原來的文件,成功返回200OK。如果添加文件長度超過5T,返回錯誤消息400BadRequest。如果在PutObject的時候,攜帶以*-amz-meta-為前綴的參數(shù),則視為usermeta,比方*-amz-meta-location。一個Object可以有多個類似的參數(shù),但所有的usermeta總大小不能超過2k。如果傳入的Objectkey長度大于1023,返回400BadRequest。GetObject用于獲取*個Object,此操作要求用戶對該Object有讀權限。下面例如中返回對象my-image.jpgGET/my-image.jpgHTTP/1.1GET/my-image.jpgHTTP/1.1Host:bucket.oos.ctyunapi.Date:Mon,03Sep201222:32:00GMTAuthorization:AWSmailaddressemail.:*QE0diMbLRepdf3YB+FIE*AMPLE=返回例如HTTP/1.1200OKHTTP/1.1200OK*-amz-request-id:318BC8BC148832E5Date:Mon,03Sep201222:32:00GMTLast-Modified:Sat,01Sep201217:50:00GMTETag:"fba9dede5f27731c9771645a39863328"Content-Length:434234Content-Type:image/ipegConnection:closeServer:CTYUN[434234bytesofobjectdata]如果文件不存在返回404NotFound錯誤。錯誤例如:GetObject時可以設定文件傳送*圍,在頭中以Range設定。例如,設定bytes=0-9,表示傳送第0到第9這10個字符。注意:在返回消息中會包含整個文件的長度和此次返回的*圍,例如:Content-Range:bytes0-9/44,表示整個文件長度為44,此次返回的*圍為0-9。如果不符合*圍規(guī)*,則傳送整個文件,并且不在結果中提及Content-Range。如果設定If-Modified-Since,并傳入上次修改時間,如果參數(shù)中的時間早于實際修改時間,正常傳送文件,并返回200OK。如果參數(shù)中的時間和實際修改時間一樣或者更晚,會返回304notmodified。2.如果設定If-Unmodified-Since,如果傳入?yún)?shù)中的時間等于或者晚于文件實際修改時間,傳送文件并返回200OK,如果早于實際修改時間,會返回412preconditionfailed錯誤。如果設定If-Match,并傳入期望的ETag,假設和object的ETag匹配,正常的發(fā)送文件。如果不符合,返回412preconditionfailed錯誤。如果設定If-None-Match來檢查文件是否有更新,需要傳入ETag,如果傳入值和Object的一樣,返回304NotModified。GetObject操作支持包含If-Modified-Since,If-Unmodified-Since,If-Match和If-None-Match中多個條件查詢,其中If-Modified-Since和If-Unmodified-Since可以同時存在,If-Match和If-None-Match也可以同時存在。在多條件查詢時,遵循以下規(guī)則:1.如果包含If-Unmodified-Since并且不符合或者包含If-Match并且不符合,返回412preconditionfailed。2.如果包含If-Modified-Since并且不符合或者包含If-None-Match并且不符合,返回304NotModified。3.返回200OK,并傳輸文件。HeadObjectHeadObject只返回*個Object的meta信息,不返回文件內容。注意:不管正常返回200OK還是非正常返回,HeadObject都不返回消息體。請求例如:? HEAD/bucket/my-image.jpgHTTP/1.1? HEAD/bucket/my-image.jpgHTTP/1.1? Host:oos.ctyunapi.? Date:Wed,28May201122:32:00GMT? HTTP/1.1200OK? *-amz-request-id:318BC8BC143432E5? HTTP/1.1200OK? *-amz-request-id:318BC8BC143432E5? Date:Wed,28May201122:32:00GMT? Last-Modified:Sun,1Jan201112:00:00GMT? ETag:"fba9dede5f27731c9771645a39863328"? Content-Length:434234? Content-Type:te*t/plain? Connection:close? Server:CTYUN如果文件不存在返回404NotFound錯誤。HeadObject支持在頭中設定If-Modified-Since,If-Unmodified-Since,If-Match,If-None-Match,具體規(guī)則請參見GetObject中對應的選項。如果沒有修改,返回304NotModified。HeadObject支持在頭中設定If-Modified-Since,If-Unmodified-Since,If-Match,If-None-Match,具體規(guī)則請參見GetObject中對應的選項。如果沒有修改,返回304NotModified。HeadObject和GetObject操作類似,支持包含If-Modified-Since,If-Unmodified-Since,If-Match和If-None-Match中多個條件查詢,其中If-Modified-Since和If-Unmodified-Since可以同時存在,If-Match和If-None-Match也可以同時存在。在多條件查詢時,遵循以下規(guī)則。如果包含If-Unmodified-Since并且不符合或者包含If-Match并且不符合,返回412preconditionfailed。如果包含If-Modified-Since并且不符合或者包含If-None-Match并且不符合,返回200OK,并傳輸文件,返回304NotModified。如果用戶在PutObject的時候傳入以*-OOS-meta-為開頭的usermeta,比方*-OOS-meta-location,返回消息時,返回這些usermeta。DeleteObjectDeleteObject用于刪除*個Object注意:如果文件不存在,也返回204NoContentDELETE/my-image.jpgHTTP/1.1Host:bucket.oos.ctyunapi.DELETE/my-image.jpgHTTP/1.1Host:bucket.oos.ctyunapi.Date:Mon,03Sep201217:50:00GMTAuthorization:AWSmailaddressemail.:*QE0diMbLRepdf3YB+FIE*AMPLE=Content-Type:image/ipeg下一個例子中刪除一個叫my-image.jpg的圖片對象返回例如HTTP/1.1204NoContentHTTP/1.1204NoContent*-amz-request-id:0A49CE4060975EACDate:Mon,03Sep201217:50:00GMTContent-Length:0Connection:closeServer:CTYUN如果Bucket不存在,返回404NotFound5.3關于Bucket的操作Bucket的操作有:PutBucket、GetBucket、DeleteBucket、GetBucketACL、PutBucketACL。1、PutBucketPutBucket用于創(chuàng)立Bucket〔不支持匿名訪問〕。請求例如請求創(chuàng)立一個名叫picture的bucket:PUT/HTTP/1.1PUT/HTTP/1.1Host:picture.oos.ctyunapi.Content-Length:0Date:Mon,03Sep201212:00:00GMTAuthorization:AWSmailaddressemail.:*QE0diMbLRepdf3YB+FIE*AMPLE=返回例如HTTP/1.1200OKHTTP/1.1200OK*-amz-request-id:236A8905248E5A01Date:Mon,03Sep201212:00:00GMTLocation:/pictureContent-Length:0Connection:closeServer:CTYUN如果請求的Bucket已經(jīng)存在,并且請求者是所有者,同樣返回200OK成功。如果請求的Bucket已經(jīng)存在,但是不是請求者所擁有的,返回409Conflict。如果想創(chuàng)立的Bucket不符合命名規(guī)*,返回400BadRequest消息:如果用戶發(fā)起PUTBucket請求的時候,沒有傳入用戶驗證信息,返回403Forbidden消息。如果PutBucket的時候發(fā)現(xiàn)已經(jīng)超過bucket最大創(chuàng)立數(shù)—10時,返回400BadRequest消息。GetBucket(ListObject)GetBucket操作可用來listBucket中所有Object的信息。請求例如GET/HTTP/1.1Host:BucketName.oos.ctyunapi.GET/HTTP/1.1Host:BucketName.oos.ctyunapi.Date:Mon,03Sep201217:50:00GMTAuthorization:AWSmailaddressemail.:*QE0diMbLRepdf3YB+FIE*AMPLE=Content-Type:te*t/plain<"*mlversion="1.0"encoding="UTF-8""><"*mlversion="1.0"encoding="UTF-8""><ListBucketResult*mlns="oos.ctyunapi./doc/2012-09-31"><Name>bucket</Name><Prefi*/><Marker/><Ma*Keys>1000</Ma*Keys><IsTruncated>false</IsTruncated><Contents><Key>my-image.jpg</Key><LastModified>2012-09-03T17:50:30.000Z</LastModified><ETag>"fba9dede5f27731c9771645a39863328"</ETag><Size>434234</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>yourmailmail.</DisplayName></Owner></Contents><Contents><Key>my-third-image.jpg</Key><LastModified>2012-09-03T17:50:30.000Z</LastModified><ETag>"1b2cf535f27731c974343645a3985328&<Size>64994</Size><StorageClass>STANDARD</StorageClass><Owner><ID>75aa57f09aa0c8caeab4f8c24e99d10f8e7faeebf76c078efc7c6caea54ba06a</ID><DisplayName>yourmailmail.</DisplayName></Owner></Contents></ListBucketResult>使用請求變量的例如:注意:

1.文件中自定義的meta,在GetBucket請求時不會返回。

2.List的結果中會標識出那些keys是ObjectGroup。如果訪問的Bucket不存在,包括試圖訪問因為命名不規(guī)*無法創(chuàng)立的Bucket,返回404NotFound錯誤。如果沒有訪問該Bucket的權限,返回403Forbidden錯誤。GetBucket〔ListObject〕時,也可以通過prefi*,marker,delimiter和ma*-keys對list做限定,返回局部結果。

1.prefi*限定返回的objectkey必須以prefi*作為前綴。注意使用prefi*查詢時,返回的key中仍會包含prefi*。

2.ma*-keys用于限定此次返回object的最大數(shù),如果不設定,默認為100,ma*-keys取值不能大于100。

3.maker用戶設定結果從marker之后按字母排序的第一個開場返回。

4.prefi*,marker用來實現(xiàn)分頁顯示效果,參數(shù)的長度必須小于256字節(jié)。

5.delimiter是一個用于對Object名字進展分組的字符。所有名字包含指定的前綴且第一次出現(xiàn)delimiter字符之間的object作為一組元素——monPrefi*es。利用delimiter這個參數(shù),可以方便地實現(xiàn)出文件夾的功能,如一個bucket存在object:fun/test.jpg,fun/movie/001.avi,fun/movie/007.avi。假設設定prefi*為〞fun/〞,則返回三個object;如果增加設定delimiter為"/〞,則返回〞fun/test.jpg〞和〞fun/movie/〞;即實現(xiàn)了文件夾的邏輯。如果把prefi*設為*個文件夾名,例如/bucketName/folder1/,就可以羅列以此prefi*開頭的文件,即該文件夾下遞歸的所有的文件和子文件夾。如果再把delimiter設置為/時,返回值就只羅列該文件夾下的文件,該文件夾下的子文件名返回在monPrefi*es局部,子文件夾下遞歸的文件和文件夾不被顯示。如果因為ma*-keys的設定無法一次完成listing,返回結果會附加一個<Ne*tMarker>,提示繼續(xù)listing可以以此為marker。Ne*tMarker中的值仍在list結果之中。即使marker實際在列表中不存在,返回也從符合marker字母排序的下一個開場打印。如果ma*-keys小于0或者大于100,將返回400BadRequest錯誤。假設prefi*,marker,delimiter參數(shù)不符合長度要求,返回400BadRequest。Prefi*不符合規(guī)*返回消息例如:(maker,delimiter參數(shù)不符合長度要求返回消息同prefi*)。DeleteBucketDeleteBucket用于刪除*個Bucket。請求例如:刪除名叫doc的bucket:DELETE/HTTP/1.1DELETE/HTTP/1.1Host:doc.oos.ctyunapi.Date:Mon,03Sep201212:00:00GMTAuthorization:AWSmailaddressemail.:*QE0diMbLRepdf3YB+FIE*AMPLE=返回例如HTTP/1.1204NoContentHTTP/1.

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論