當下載大文件時,如果網絡不穩定或者程序異常退出,會導致下載失敗,甚至重試多次仍無法完成下載。此時您可以通過SDK或者ossutil下載大文件。
通過SDK下載
您可以通過SDK的方式實現斷點續傳下載,從而下載大文件。斷點續傳下載過程中有以下注意事項:
本文以華東1(杭州)外網Endpoint為例。如果您希望通過與OSS同地域的其他阿里云產品訪問OSS,請使用內網Endpoint。關于OSS支持的Region與Endpoint的對應關系,請參見訪問域名和數據中心。
本文以從環境變量讀取訪問憑證為例。如何配置訪問憑證,請參見配置訪問憑證。
本文以OSS域名新建OSSClient為例。如果您希望通過自定義域名、STS等方式新建OSSClient,請參見初始化。
要斷點續傳下載,您必須有
oss:GetObject
權限。具體操作,請參見為RAM用戶授權自定義的權限策略。使用斷點續傳下載時,文件下載的進度信息會記錄在Checkpoint文件中,如果下載過程中某一分片下載失敗,再次下載時會從Checkpoint文件中記錄的點繼續下載,從而達到斷點續傳的效果。下載完成后,Checkpoint文件會被刪除。
SDK會將下載的狀態信息記錄在Checkpoint文件中,所以要確保程序對Checkpoint文件有寫權限。
請勿修改Checkpoint文件中攜帶的校驗信息。如果Checkpoint文件損壞,則會重新下載所有分片。
如果下載過程中文件的ETag發生變化、Part丟失或被修改,則重新下載文件。
關于斷點續傳下載SDK的具體代碼,請參見使用阿里云SDK。
通過ossutil下載
您可以通過ossutil工具的cp命令將OSS的文件(Object)下載到本地。
更多信息,請參見cp(下載文件)。
文檔內容是否對您有幫助?