保利威文档中心

幫助中心

infoService

更新時間:2023-09-22 17:47:34

1、查詢單一影片資訊

描述

通过视频id查询单个视频的信息
接口地址(仅做说明使用):https://api.polyv.net/v2/video/%s/get-video-msg

呼叫限制

1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看

單元測試

    @Test
    public void testGetVideo() throws IOException, NoSuchAlgorithmException {
        VodGetVideoRequest vodGetVideoRequest = new VodGetVideoRequest();
        VodGetVideoResponse vodGetVideoResponse = null;
        try {
            vodGetVideoRequest.setVideoId(super.getTestVideoId());
            vodGetVideoResponse = new VodInfoServiceImpl().getVideo(vodGetVideoRequest);
            Assert.assertNotNull(vodGetVideoResponse);
            if (vodGetVideoResponse != null) {
                log.debug("测试查询单个视频信息成功,{}", JSON.toJSONString(vodGetVideoResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

單元測試說明

1、請求正確,回傳VodGetVideoResponse物件,B端依據此物件處理業務邏輯;

2、請求參數驗證不合格,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 輸入參數 [xxx.chat.VodxxxRequest] 物件驗證失敗,失敗欄位 [pic 不能為空 / msg 不能為空] ]

3、伺服器處理異常,拋出 PloyvSdkException,錯誤資訊請參閱 PloyvSdkException.getMessage(),例如 [ 保利威請求回傳資料錯誤,請求流水號:66e7ad29fd04425a84c2b2b562d2025b,錯誤原因: invalid signature. ]

請求參數說明

參數名稱 必填 類型 說明
videoId true String 影片ID【對應API文件的vid欄位】

回傳物件描述

參數名 類型 說明
swfLink String 回傳 flash 連結【對應 API 文件的 swf_link 欄位】
tag String 影片標籤
mp4 String MP4 原始檔案
playerWidth Integer 影片寬度【對應 API 文件的 playerwidth 欄位】
title String 影片標題
duration String 影片長度,例如:00:00:48
filesize Long[] 編碼後各清晰度影片的檔案大小,類型為 array
firstImage String 影片首圖【對應 API 文件的 first_image 欄位】
times Integer 播放次數
context String 影片描述
originalDefinition String 最佳解析度,例如:1280x720【對應 API 文件的 original_definition 欄位】
images String[] 影片截圖
playerHeight Integer 影片高度【對應 API 文件的 playerheight 欄位】
uploadTime Date 上傳時間,格式:yyyy-MM-dd HH:mm:ss【對應 API 文件的 ptime 欄位】
videoId String 影片 ID【對應 API 文件的 vid 欄位】
previewVideoId String 預覽影片 ID【對應 API 文件的 previewVid 欄位】
categoryId String 分類 ID,例如 1 為根目錄【對應 API 文件的 cataid 欄位】
defaultVideo String 使用者預設播放影片【對應 API 文件的 default_video 欄位】
df Integer 影片碼率數
SDFlv String 流暢碼率 flv 格式影片位址【對應 API 文件的 flv1 欄位】
HDFlv String 高清碼率 flv 格式影片位址【對應 API 文件的 flv2 欄位】
FHDFlv String 超清碼率 flv 格式影片位址【對應 API 文件的 flv3 欄位】
SDMp4 String 流暢碼率 mp4 格式影片位址【對應 API 文件的 mp4_1 欄位】
HDmp4 String 高清碼率 mp4 格式影片位址【對應 API 文件的 mp4_2 欄位】
FHDmp4 String 超清碼率 mp4 格式影片位址【對應 API 文件的 mp4_3 欄位】
hls String[] 索引檔案,記錄每個清晰度的 m3u8 連結,陣列第一個為流暢連結,第二個為高清,第三個為超清,陣列長度為 1-3
SDHls String 流暢清晰度的 m3u8
HDHls String 高清清晰度的 m3u8
FHDHls String 超清清晰度的 m3u8
imagesBig String[] 影片截圖大圖位址【對應 API 文件的 images_b 欄位】
seed Integer 加密影片為 1,非加密為 0
status Integer 影片狀態:60/61 已發布;10 等待編碼;20 正在編碼;50 等待審核;51 審核不通過;-1 已刪除;
keepSource Integer 是否為原始檔案,否:0,是:1【對應 API 文件的 keepsource 欄位】
uploader Uploader 上傳者資訊【詳見 Uploader 參數描述
hlsLevel String 加密等級 open:非授權加密 web:web 授權 app:app 授權 wxa_app:小程式授權
categoryName String 分類名稱【對應 API 文件的 cataname 欄位】
imageUrls Array 影片截圖小圖 url
sourceFileSize String 原始影片檔案大小,單位為:byte【對應 API 文件的 source_filesize 欄位】
md5CheckSum String 上傳到 POLYV 雲平台的影片原始檔案的 MD5 值,可用來校驗是否上傳錯誤或完整【對應 API 文件的 md5checksum 欄位】
Uploader參數描述
參數名 類型 說明
email String 上傳者信箱
name String 上傳者名稱
role String 上傳者角色,如管理員、上傳者、主帳號






2、查詢影片授權播放開關

描述

通过视频id查询视频授权播放开关状态
接口地址(仅做说明使用):https://api.polyv.net/v2/video/%s/authplay-status

呼叫限制

1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看

單元測試

    @Test
    public void testGetVideoPlayStatus() throws IOException, NoSuchAlgorithmException {
        VodGetVideoPlayStatusRequest vodGetVideoPlayStatusRequest = new VodGetVideoPlayStatusRequest();
        Boolean vodGetVideoPlayStatusResponse = null;
        try {
            vodGetVideoPlayStatusRequest
                    //可通过 new VodQueryServiceImpl().queryVideoList()获取
                    .setVideoId(super.getTestVideoId());
            vodGetVideoPlayStatusResponse = new VodInfoServiceImpl().getVideoPlayStatus(vodGetVideoPlayStatusRequest);
            Assert.assertTrue(vodGetVideoPlayStatusResponse);
            if (vodGetVideoPlayStatusResponse) {
                log.debug("测试查询视频授权播放开关成功");
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

單元測試說明

1、請求正確,回傳 Boolean 物件,B 端依據此物件處理業務邏輯;

2、請求參數驗證不合格,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 輸入參數 [xxx.chat.VodxxxRequest] 物件驗證失敗,失敗欄位 [pic 不能為空 / msg 不能為空] ]

3、伺服器處理異常,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 保利威請求回傳資料錯誤,請求流水號:66e7ad29fd04425a84c2b2b562d2025b,錯誤原因:invalid signature. ]

請求入參說明

參數名稱 必填 類型 說明
videoId true String 影片ID【對應API文件的vid欄位】

回傳物件描述

true 為開關開啟,false 為開關關閉




3、查詢影片時長與大小

描述

通过视频id或分类id查询视频的时长和大小
接口地址(仅做说明使用):https://api.polyv.net/v2/video/%s/getSizeByCata

呼叫限制

1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看

2、當傳入 videoIds 時,依照 videoIds 查詢;當僅傳入 categoryIds 時,依照 categoryIds 查詢;videoIds 和 categoryIds 不能同時為空;同時傳入時以 videoIds 為準

單元測試

    @Test
    public void testGetVideoSize() throws IOException, NoSuchAlgorithmException {
        VodGetVideoSizeRequest vodGetVideoSizeRequest = new VodGetVideoSizeRequest();
        List<VodGetVideoSizeResponse> vodGetVideoSizeResponseList = null;
        try {
            vodGetVideoSizeRequest.setVideoIds(super.getTestVideoId()).setCategoryIds("1602300731843");
            vodGetVideoSizeResponseList = new VodInfoServiceImpl().getVideoSize(vodGetVideoSizeRequest);
            Assert.assertNotNull(vodGetVideoSizeResponseList);
            if (vodGetVideoSizeResponseList != null) {
                log.debug("测试根据分类批量查询视频时长和大小成功,{}", JSON.toJSONString(vodGetVideoSizeResponseList));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

單元測試說明

1、請求正確,回傳 VodGetVideoSizeResponse 物件,B 端依據此物件處理業務邏輯;

2、請求參數驗證不合格,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 輸入參數 [xxx.chat.VodxxxRequest] 物件驗證失敗,失敗欄位 [pic不能為空 / msg不能為空] ]

3、伺服器處理異常,拋出 PloyvSdkException,錯誤資訊請見 PloyvSdkException.getMessage(),例如 [ 保利威請求回傳資料錯誤,請求流水號:66e7ad29fd04425a84c2b2b562d2025b,錯誤原因: invalid signature. ]

請求入參說明

參數名 必選 類型 說明
videoIds true String 多個影片ID(英文逗號分隔,狀態為半形),例如 1b8be3,239c2e【對應 API 文件的 vids 欄位】
categoryIds false String 多個分類ID(逗號分隔),當傳入 vids 時,依 vids 查詢;當僅傳入 cataid 時,依 cataid 查詢;vids 和 cataid 不能同時為空【對應 API 文件的 cataid 欄位】

回傳物件描述

回傳物件是List<VodGetVideoSizeResponse>,VodGetVideoSizeResponse具體元素內容如下:

參數名 類型 說明
categoryId String 分類ID【對應API文件的cataid欄位】
videos Array 影片結果列表【詳見Video參數說明
Video參數描述
參數名 類型 說明
videoId String 影片ID【對應API文件的vid欄位】
duration String 時長,格式為hh:mm:ss。例如 00:03:11
filesize1 Long 編碼後碼率1FLV的大小,單位為Bytes:位元組
filesize2 Long 編碼後碼率2FLV的大小,單位為Bytes:位元組
filesize3 Long 編碼後碼率3FLV的大小,單位為Bytes:位元組






4、查詢微信分享頁的影片資訊

描述

通过视频id查询微信分享页的视频信息
接口地址(仅做说明使用):https://api.polyv.net/v2/video/wechat-share/%s/video-info

呼叫限制

1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看

單元測試

    @Test
    public void testGetWeChatShareVideoInfo() throws IOException, NoSuchAlgorithmException {
        VodGetWeChatShareVideoInfoRequest vodGetWeChatShareVideoInfoRequest = new VodGetWeChatShareVideoInfoRequest();
        VodGetWeChatShareVideoInfoResponse vodGetWeChatShareVideoInfoResponse = null;
        try {
            vodGetWeChatShareVideoInfoRequest.setVideoId(super.getTestVideoId());
            vodGetWeChatShareVideoInfoResponse = new VodInfoServiceImpl().getWeChatShareVideoInfo(
                    vodGetWeChatShareVideoInfoRequest);
            Assert.assertNotNull(vodGetWeChatShareVideoInfoResponse);
            if (vodGetWeChatShareVideoInfoResponse != null) {
                log.debug("测试查询微信分享页的视频相关信息成功,{}", JSON.toJSONString(vodGetWeChatShareVideoInfoResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

單元測試說明

1、請求正確,回傳 VodGetWeChatShareVideoInfoResponse 物件,B 端依據此物件處理業務邏輯;

2、請求參數驗證不合格,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 輸入參數 [xxx.chat.VodxxxRequest] 物件驗證失敗,失敗欄位 [pic 不能為空 / msg 不能為空] ]

3、伺服器處理異常,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 保利威請求返回資料錯誤,請求流水號:66e7ad29fd04425a84c2b2b562d2025b,錯誤原因: invalid signature. ]

請求入參描述

參數名稱 必填 類型 說明
videoId true String 影片ID【對應API文件的vid欄位】

回傳物件描述

參數名 類型 說明
videoCoverImg String 影片封面圖
videoTitle String 影片微信分享標題
videoDesc String 影片描述
videoIcon String 影片圖示
originalPlayTimes Integer 初始播放次數
originalLikeNum Integer 初始按讚數






5、查詢影片播放預覽時長

描述

通过视频id查询视频播放预览时长
接口地址(仅做说明使用):https://api.polyv.net/v2/video/%s/get-preview-duration

呼叫限制

1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看

單元測試

    @Test
    public void testGetVideoPreviewDuration() throws IOException, NoSuchAlgorithmException {
        VodGetVideoPreviewDurationRequest vodGetVideoPreviewDurationRequest = new VodGetVideoPreviewDurationRequest();
        Integer vodGetVideoPreviewDurationResponse = null;
        try {
            vodGetVideoPreviewDurationRequest.setVideoId(super.getTestVideoId());
            vodGetVideoPreviewDurationResponse = new VodInfoServiceImpl().getVideoPreviewDuration(
                    vodGetVideoPreviewDurationRequest);
            Assert.assertNotNull(vodGetVideoPreviewDurationResponse);
            if (vodGetVideoPreviewDurationResponse != null) {
                log.debug("测试查询视频播放预览时长成功,{}", JSON.toJSONString(vodGetVideoPreviewDurationResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

單元測試說明

1、請求正確,回傳 Integer 物件,B 端依據此物件處理業務邏輯;

2、請求參數驗證不合格,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 輸入參數 [xxx.chat.VodxxxRequest] 物件驗證失敗,失敗欄位 [pic 不能為空 / msg 不能為空] ]

3、伺服器處理異常,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 保利威請求回傳資料錯誤,請求流水號:66e7ad29fd04425a84c2b2b562d2025b,錯誤原因: invalid signature. ]

請求入參說明

參數名稱 必填 類型 說明
videoId true String 影片ID【對應 API 文件的 vid 欄位】

回傳物件描述

影片播放預覽時長,單位:秒




6、查詢單一影片的首圖

描述

通过视频id查询单个视频的首图
接口地址(仅做说明使用):https://api.polyv.net/v2/video/%s/get-image

呼叫限制

1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看

單元測試

    @Test
    public void testGetVideoFirstImage() throws IOException, NoSuchAlgorithmException {
        VodGetVideoFirstImageRequest vodGetVideoFirstImageRequest = new VodGetVideoFirstImageRequest();
        String vodGetVideoFirstImageResponse = null;
        try {
            vodGetVideoFirstImageRequest.setVideoId(super.getTestVideoId()).setThumbnail(1);
            vodGetVideoFirstImageResponse = new VodInfoServiceImpl().getVideoFirstImage(vodGetVideoFirstImageRequest);
            Assert.assertNotNull(vodGetVideoFirstImageResponse);
            if (vodGetVideoFirstImageResponse != null) {
                log.debug("测试查询单个视频的首图成功,{}", vodGetVideoFirstImageResponse);
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

單元測試說明

1、請求正確,回傳 String 物件,B 端依據此物件處理業務邏輯;

2、請求參數驗證不合格,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 輸入參數 [xxx.chat.VodxxxRequest] 物件驗證失敗,失敗欄位 [pic 不能為空 / msg 不能為空] ]

3、伺服器處理異常,拋出 PloyvSdkException,錯誤資訊請參閱 PloyvSdkException.getMessage(),例如 [ 保利威請求回傳資料錯誤,請求流水號:66e7ad29fd04425a84c2b2b562d2025b,錯誤原因: invalid signature. ]

請求入參描述

參數名 必選 類型 說明
videoId true String 影片ID【對應API文件的vid欄位】
thumbnail false Integer 是否為影片首圖的縮圖,值為1:是;值為0:否。預設為0:非影片首圖的縮圖【對應API文件的t欄位】

回傳物件描述

首圖地址




7、查詢影片密碼

描述

通过视频id查询视频密码
接口地址(仅做说明使用):https://api.polyv.net/v2/video/%s/video-setting-page

呼叫限制

1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看

單元測試

    @Test
    public void testQueryVideoPassword() throws IOException, NoSuchAlgorithmException {
        VodQueryVideoPasswordRequest vodQueryVideoPasswordRequest = new VodQueryVideoPasswordRequest();
        VodQueryVideoPasswordResponse vodQueryVideoPasswordResponse = null;
        try {
            vodQueryVideoPasswordRequest.setVideoId(super.getTestVideoId());
            vodQueryVideoPasswordResponse = new VodInfoServiceImpl().queryVideoPassword(vodQueryVideoPasswordRequest);
            Assert.assertNotNull(vodQueryVideoPasswordResponse);
            if (vodQueryVideoPasswordResponse != null) {
                log.debug("测试查询视频密码成功,{}", JSON.toJSONString(vodQueryVideoPasswordResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

單元測試說明

1、請求正確,回傳 VodQueryVideoPasswordResponse 物件,B 端依據此物件處理業務邏輯;

2、請求參數驗證不合格,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 輸入參數 [xxx.chat.VodxxxRequest] 物件驗證失敗,失敗欄位 [pic 不能為空 / msg 不能為空] ]

3、伺服器處理異常,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 保利威請求返回資料錯誤,請求流水號:66e7ad29fd04425a84c2b2b562d2025b,錯誤原因: invalid signature. ]

請求入參描述

參數名稱 必選 類型 說明
videoId true String 影片ID【對應 API 文件的 vids 欄位】

回傳物件描述

參數名稱 類型 說明
isShowPassword Boolean 是否顯示密碼,預設為否
password String 影片密碼
videoId String 影片 ID
title String 影片標題






8、批次查詢影片播放次數

描述

通过视频id批量查询视频播放次数
接口地址(仅做说明使用):https://api.polyv.net/v2/data/%s/play-times

呼叫限制

1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看

單元測試

    @Test
    public void testGetVideosPlayTimes() throws IOException, NoSuchAlgorithmException {
        VodGetVideosPlayTimesRequest vodGetVideosPlayTimesRequest = new VodGetVideosPlayTimesRequest();
        List<VodGetVideosPlayTimesResponse> vodGetVideosPlayTimesResponseList = null;
        try {
            vodGetVideosPlayTimesRequest.setVideoIds(
                    "1b448be3234406608b7838c7ef6b597c_1,1b448be323a146649ad0cc89d0faed9c_1").setRealTime(0);
            vodGetVideosPlayTimesResponseList = new VodInfoServiceImpl().getVideosPlayTimes(
                    vodGetVideosPlayTimesRequest);
            Assert.assertNotNull(vodGetVideosPlayTimesResponseList);
            if (vodGetVideosPlayTimesResponseList != null) {
                log.debug("测试批量查询视频播放次数成功,{}", JSON.toJSONString(vodGetVideosPlayTimesResponseList));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

單元測試說明

1、請求正確,回傳 VodGetVideosPlayTimesResponse 物件,B 端依據此物件處理業務邏輯;

2、請求參數驗證不合格,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 輸入參數 [xxx.chat.VodxxxRequest] 物件驗證失敗,失敗欄位 [pic 不能為空 / msg 不能為空] ]

3、伺服器處理異常,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 保利威請求回傳資料錯誤,請求流水號:66e7ad29fd04425a84c2b2b562d2025b,錯誤原因:invalid signature. ]

請求參數說明

參數名 必選 類型 說明
videoIds true String 多個影片ID(英文逗號分隔,狀態為半形),建議不超過200個,例如 1b8be3,239c2e【對應API文件的vids欄位】
realTime false Integer 是否即時,1表示即時,0表示非即時,預設為0:非即時

回傳物件描述

回傳物件是 List<VodGetVideosPlayTimesResponse>,VodGetVideosPlayTimesResponse 具體元素內容如下:

參數名稱 類型 說明
videoId String 影片ID【對應API文件的vid欄位】
times Integer 播放次數






9、查詢影片資訊

描述

通过视频id查询视频信息
接口地址(仅做说明使用):https://api.polyv.net/v2/video/%s/get-video-info

呼叫限制

1、介面呼叫有頻率限制,詳細請查看,呼叫常見異常,詳細請查看

單元測試

    @Test
    public void testGetVideoInfo() throws IOException, NoSuchAlgorithmException {
        VodAccountQueryVideoInfoRequest vodAccountQueryVideoInfoRequest = new VodAccountQueryVideoInfoRequest();
        List<VodAccountQueryVideoInfoResponse> vodAccountQueryVideoInfoResponse;
        try {
            vodAccountQueryVideoInfoRequest.setVideoIds(super.getTestVideoId());
            vodAccountQueryVideoInfoResponse = new VodInfoServiceImpl().getVideoInfo(vodAccountQueryVideoInfoRequest);
            Assert.assertNotNull(vodAccountQueryVideoInfoResponse);
            if (vodAccountQueryVideoInfoResponse != null) {
                //to do something ......
                log.debug("测试查询视频信息成功 {}", JSON.toJSONString(vodAccountQueryVideoInfoResponse));
            }
        } catch (PloyvSdkException e) {
            //参数校验不合格 或者 请求服务器端500错误,错误信息见PloyvSdkException.getMessage()
            log.error(e.getMessage(), e);
            // 异常返回做B端异常的业务逻辑,记录log 或者 上报到ETL 或者回滚事务
            throw e;
        } catch (Exception e) {
            log.error("SDK调用异常", e);
            throw e;
        }
    }

單元測試說明

1、請求正確,回傳 VodAccountQueryVideoInfoResponse 物件,B 端依據此物件處理業務邏輯;

2、請求參數驗證不合格,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 輸入參數 [xxx.chat.VodxxxRequest] 物件驗證失敗,失敗欄位 [pic 不能為空 / msg 不能為空] ]

3、伺服器處理異常,拋出 PloyvSdkException,錯誤訊息請見 PloyvSdkException.getMessage(),例如 [ 保利威請求回傳資料錯誤,請求流水號:66e7ad29fd04425a84c2b2b562d2025b,錯誤原因:invalid signature. ]

請求參數說明

參數名稱 必填 類型 說明
videoIds true String 影片 ID(可支援多個,以英文逗號分隔)【對應 API 文件的 vid 欄位】

回傳物件描述

回傳物件為 List<VodAccountQueryVideoInfoResponse>,VodAccountQueryVideoInfoResponse 具體元素內容如下:

參數名 類型 說明
videoId String 影片ID【對應API文件的vid欄位】
basicInfo BasicInfo 查詢的影片基本資訊【詳見BasicInfo參數說明
transcodeInfos Array 查詢的影片轉碼資訊【詳見TranscodeInfos參數說明
metaData MetaData 查詢的影片元資料【詳見MetaData參數說明
snapshotInfo SnapshotInfo 查詢的影片截圖【詳見SnapshotInfo參數說明
BasicInfo參數描述
參數名 類型 說明
title String 影片標題
description String 影片描述
duration Integer 原始影片長度,單位:秒
coverURL String 首圖網址,大圖
creationTime Date 建立時間,格式:yyyy-MM-dd HH:mm:ss
updateTime Date 更新時間,格式:yyyy-MM-dd HH:mm:ss
size Long 原始檔案大小,單位:Bytes
status Integer 影片狀態碼;60/61:已發布;10:等待編碼;20:正在編碼;50:等待審核;51:審核不通過;-1:已刪除;
categoryId String 分類 ID,如 1 為根目錄【對應 API 文件的 cateId 欄位】
categoryName String 分類名稱【對應 API 文件的 cateName 欄位】
tags String 標籤
uploader String 上傳者
TranscodeInfos參數描述
參數名 類型 說明
playUrl String 播放位址
definition String 清晰度,SOURCE:原始清晰度,LD:普清,SD:標清,HD:高清
duration Integer 時長,秒
encrypt Boolean 加密影片為true,非加密為false
format String 轉碼格式,如mp4、flv、pdx、hls
fps Integer 影片幀率
bitrate Integer 碼率kbps
height Integer 解析度高,單位:px
width Integer 解析度寬,單位:px
status String 影片狀態, normal:可以正常播放,unavailable:不能正常播放
fileSize Long 編碼後影片大小,單位:位元組
MetaData參數描述
參數名 類型 說明
size Long 原始檔案大小,單位:Bytes
format String 影片容器類型,如 mp4、flv 等
duration Integer 原始影片長度,單位:秒
bitrate Integer 影片位元率,單位:bps
fps Integer 影片幀率
height Integer 解析度高度,單位:px
width Integer 解析度寬度,單位:px
codec String 編碼格式,如 h264、h265 等
SnapshotInfo參數描述
參數名稱 類型 說明
imageUrl Array 截圖網址陣列

联系客服,在线咨询