打包下載API
介面說明
介面公測中,如有任何使用問題,請加入DingTalk群進行反饋,DingTalk群號請參見聯絡我們。
該介面目前支援打包,不支援壓縮,後續會增加壓縮功能。
-
請確保在使用該介面前,已充分瞭解Intelligent Media Management產品的收費方式和價格。
重要 非同步任務不保證時效。 -
檔案數量限制:最多支援打包 8 萬個檔案。
-
檔案大小限制:打包前所有檔案大小不超過 200 GB。
-
該功能支援 OSS 上的標準儲存類型檔案,如需要打包其他類型檔案,請先轉化檔案的儲存類型。
-
該介面為非同步介面,擷取任務開始執行後,任務資訊只儲存 7 天,超過 7 天則無法再擷取。調用 GetTask 或 ListTasks 介面擷取返回的
TaskId,查看任務資訊。也可以通過設定 Notification 訊息通知參數,通過訊息通知擷取任務資訊。
調試
您可以在OpenAPI Explorer中直接運行該介面,免去您計算簽名的困擾。運行成功後,OpenAPI Explorer可以自動產生SDK程式碼範例。
調試
授權資訊
|
操作 |
存取層級 |
資源類型 |
條件關鍵字 |
關聯操作 |
|
imm:CreateFileCompressionTask |
create |
*Project
|
無 | 無 |
請求參數
|
名稱 |
類型 |
必填 |
描述 |
樣本值 |
| ProjectName |
string |
是 |
專案名稱,擷取方式請參見建立專案。 |
test-project |
| Sources |
array<object> |
否 |
待打包的檔案清單和打包規則描述。 說明
與參數 SourceManifestURI 二選一,Sources 支援最多 100 條打包規則。 警告 超長 100 條打包規則請使用參數 SourceManifestURI。 |
|
|
object |
否 |
待打包的檔案的 OSS 地址和對應的打包規則描述。 |
||
| URI |
string |
否 |
待打包的目錄或檔案的 OSS 地址。 OSS 地址規則為 oss://${Bucket}/${Object},其中
|
oss://test-bucket/test-object |
| Alias |
string |
否 |
重新導向待壓縮檔在壓縮包中的檔案路徑或重新命名檔案。
說明
|
/new-dir/ |
| Mode |
string |
否 |
指定打包規則的匹配模式,包括
枚舉值:
|
fullname |
| CredentialConfig | CredentialConfig |
否 |
如無特殊需求,請保持留空即可。 鏈式授權配置,非必填。更多資訊,請參見使用鏈式授權訪問其他實體資源。 |
|
| SourceManifestURI |
string |
否 |
檔案清單儲存的地址。檔案清單將 Sources 結構以 JSON 格式儲存在 OSS 上,適用於打包檔案較多的情況。 說明
與參數 警告 將內容儲存到 OSS 上時,該參數需要傳遞 OSS 檔案地址。 該檔案內部結構樣本: |
oss://test-bucket/test-object.json |
| TargetURI |
string |
是 |
輸出檔案的 OSS 地址。壓縮檔將以該路徑中的檔案名稱命名,例如 OSS 地址規則為 oss://${Bucket}/${Object},其中 |
oss://test-bucket/test-target-object.zip |
| CompressedFormat |
string |
否 |
檔案打包壓縮類型。 說明
目前僅支援 zip 格式。 |
zip |
| UserData |
string |
否 |
使用者自訂資訊,在非同步訊息通知中會為您返回,方便您系統內對訊息通知進行關聯處理。最大長度為 2048 位元組。 |
test-data |
| Notification | Notification |
否 |
訊息通知配置,詳細內容請單擊 Notification 查看,非同步通知訊息格式請參見非同步通知訊息格式。 說明
Intelligent Media Management目前介面調用回調不支援指定回調地址,建議您使用 MNS。 |
典型情境中打包規則舉例
對於如下樣本的檔案結構,對一些經典的情境樣本說明:
(bucket)
├── test-dir1
│ ├── file1.txt
│ ├── file2.doc
│ ├── file3.png
│ └── my-file.json
└── test-dir2
├── AAA
│ └── file.txt
├── AAA
├── file6.doc
├── file7.doc
└── file8.doc
對指定檔案夾進行打包
打包test-dir1下的所有檔案打包到指定目錄test-dir中,打包規則:
[
{
"URI" : "oss://bucket/test-dir1/",
"Alias" : "/test-dir/"
}
]
產生的壓縮包結構為:
.
└── test-dir
├── file1.txt
├── file2.doc
├── file3.png
└── my-file.json
對指定首碼進行打包
打包首碼為test-dir1/file下的所有檔案打包到指定目錄test-dir中,打包規則:
[
{
"URI" : "oss://bucket/test-dir1/file",
"Alias" : "/test-dir/"
}
]
產生的壓縮包結構為:
.
└── test-dir
├── file1.txt
├── file2.doc
└── file3.png
注意,如果使用前置位元型進行打包,會將同名的檔案夾/檔案同時打包進壓縮包,例如:
[
{
"URI" : "oss://bucket/test-dir2/AAA",
"Alias" : "/AAA/"
}
]
產生的壓縮包結構為:
.
└── AAA
├── AAA
└── file.txt
對指定的檔案進行打包
如果不想使用前置位元型,可以通過設定mode參數準確的打包指定的檔案:
[
{
"URI" : "oss://bucket/test-dir2/AAA",
"Alias" : "AAA",
"mode" : "fullname",
},
{
"URI" : "oss://bucket/test-dir1/",
"Alias" : "/test-dir1/",
"mode" : "fullname",
}
]
產生的壓縮包結構為:
.
├── AAA
└── test-dir1
返回參數
|
名稱 |
類型 |
描述 |
樣本值 |
|
object |
響應結構體 |
||
| RequestId |
string |
請求 ID。 |
EC564A9A-BA5C-4499-A087-D9B9E76E***** |
| EventId |
string |
事件 ID。 |
0ED-1Bz8z71k5TtsUejT4UJ16Es***** |
| TaskId |
string |
任務 ID。 |
FileCompression-3579a380-6f7a-4a9d-b9d2-65996***** |
樣本
正常返回樣本
JSON格式
{
"RequestId": "EC564A9A-BA5C-4499-A087-D9B9E76E*****",
"EventId": "0ED-1Bz8z71k5TtsUejT4UJ16Es*****",
"TaskId": "FileCompression-3579a380-6f7a-4a9d-b9d2-65996*****"
}
錯誤碼
訪問錯誤中心查看更多錯誤碼。
變更歷史
更多資訊,參考變更詳情。