新東方-取得上傳PPT檔案token
更新時間:2023-11-14 14:07:19
介面URL
https://document-2.polyv.net/api/live/user/upload/token
介面說明
1、取得上傳PPT檔案token
2、介面支援https協定
3、上傳檔案到OSS參考 https://www.alibabacloud.com/help/zh/doc-detail/31927.htm
支援格式
JSON
請求方式
GET
請求數限制
TRUE
請求參數
| 參數名 | 必選 | 類型 | 說明 |
|---|---|---|---|
| fileId | 是 | string | 檔案ID (檔案MD5+userId+type) |
| userId | 是 | string | 使用者ID |
| type | 是 | string | PPT類型,“common” 一般ppt , “animate”動畫PPT |
| fileName | 是 | string | 檔案名稱 |
回應成功JSON範例:
等待上傳
{
"code": 200,
"status": "success",
"message": "",
"data": {
"encodedCallback": "eyJjYWxsYmFja1VybCI6Imh0dHA6Ly9kb2N1bWVudC0yLnBvbHl2Lm5ldC90ZXN0L2FsaS9vc3MvY2FsbGJhY2svdXBsb2FkIiwiY2FsbGJhY2tIb3N0IjoiZG9jdW1lbnQtMi5wb2x5di5uZXQiLCJjYWxsYmFja0JvZHkiOiJvYmplY3Q9JHtvYmplY3R9JnNpemU9JHtzaXplfSZidWNrZXQ9JHtidWNrZXR9JmV0YWc9JHtldGFnfSZhdXRvSWQ9MTQ5MzcxNyZmaWxlSWQ9ZDg3MDBhODhhZGUxMDUyOTQwMTM3MDM4MTBmY2ZjMTNjZjdmMDdlMDk2YW5pbWF0ZSIsImNhbGxiYWNrQm9keVR5cGUiOiJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQifQ==",
"signature": "fcrT21oNF7CMxAdI70D20hUu1fE=",
"autoId": "1493717",
"dir": "sources/20201028/",
"bucket": "polyvppt",
"accessId": "LTAIjy1Mrh8QQcQH",
"endpoint": "oss-cn-shenzhen.aliyuncs.com",
"expire": "1603941652",
"host": "http://polyvppt.oss-cn-shenzhen.aliyuncs.com",
"callback": "{\"callbackUrl\":\"http://document-2.polyv.net/test/ali/oss/callback/upload\",\"callbackHost\":\"document-2.polyv.net\",\"callbackBody\":\"object=${object}&size=${size}&bucket=${bucket}&etag=${etag}&autoId=1493717&fileId=d8700a88ade105294013703810fcfc13cf7f07e096animate\",\"callbackBodyType\":\"application/x-www-form-urlencoded\"}",
"convertStatus": "waitUpload",
"fileId": "d8700a88ade105294013703810fcfc13cf7f07e096animate",
"object": "sources/20201028/d8700a88ade105294013703810fcfc13cf7f07e096animate.pptx",
"policy": "eyJleHBpcmF0aW9uIjoiMjAyMC0xMC0yOVQwMzoyMDo1Mi42OTJaIiwiY29uZGl0aW9ucyI6W1siY29udGVudC1sZW5ndGgtcmFuZ2UiLDAsMzIyMTIyNTQ3MjBdLFsic3RhcnRzLXdpdGgiLCIka2V5Iiwic291cmNlcy8yMDIwMTAyOC8iXV19"
}
}
等待轉換
{
"code": 200,
"status": "success",
"message": "",
"data": {
"autoId": "1492485",
"convertStatus": "waitConvert",
"fileId": "18947167af136724418f3cfa32343b29cf7f07e096animate"
}
}
轉換成功
{
"code": 200,
"status": "success",
"message": "",
"data": {
"autoId": "1493717",
"convertStatus": "normal",
"fileId": "d8700a88ade105294013703810fcfc13cf7f07e096animate"
}
}
回應失敗JSON範例:
檔案類型錯誤
{
"code": 400,
"status": "error",
"message": "file type is wrong",
"data": ""
}
欄位說明
| 參數名 | 說明 |
|---|---|
| code | 請求狀態回應碼 |
| status | 請求狀態 |
| message | 錯誤訊息 |
| data | 請求失敗時為空,請求成功為成功資訊 |
| data.autoId | 記錄ID |
| data.fileId | 檔案ID |
| data.convertStatus | PPT狀態,“normal” 正常,不需要重複上傳檔案,已經有上傳成功的相同PPT,可以直接進入輪詢。“waitConvert”轉換PPT中,已經有相同的檔案正在轉換中,直接進入輪詢。“waitUpload” 等待上傳狀態,進入上傳阿里雲步驟。“failConvert” 轉換失敗 |
| data.accessId | oss上傳OSSAccessKeyId |
| data.signature | oss上傳signature |
| data.policy | oss上傳policy |
| data.endpoint | oss上傳的endpoint |
| data.encodedCallback | oss上傳的回呼參數BASE64編碼 |
| data.callback | oss上傳的回呼參數 |
| data.object | oss上傳文件key |
| data.host | oss上傳位址 |
| data.bucket | oss上傳桶 |
| data.expire | oss上傳有效時間 |
| data.dir | 上傳到oss的資料夾 |
java請求範例
public static void test() {
String url = "https://document-2.polyv.net/api/live/user/upload/token";
Map<String, String> params = new HashMap<>();
params.put("fileId", "d8700a88ade105294013703810fcfc13cf7f07e096animate");
params.put("type", "animate");
params.put("fileName", "animate.pptx");
params.put("userId", "cf7f07e096");
// 调用Polyv的httpClient工具类发送请求
String content = HttpClientUtil.getInstance().sendHttpPost(url, params);
System.out.println(content);
}
