最近更新时间:2023.03.21 14:34:42
首次发布时间:2021.10.18 11:12:18
本接口主要针对需要实现收藏场景的客户。您可以通过调用该接口获取内容状态和内容详情,避免C端用户访问到已下架的内容。
您需要自行实现在列表页或者详情页收藏文章/视频内容,在用户收藏内容时,将用户及内容id的对应关系存下,在用户进入收藏列表页时,调用本接口以获取内容标题、封面图、作者信息等,并实现自定义UI。
通过GroupId获取单条文章/视频内容
请求方法
GET/POST(Content-Type: application/x-www-form-urlencoded)
请求url
https://mercury.volcengineapi.com/?Action=SingleArticle&Version=2021-01-01
请求header
ServiceName:content
参数 | 描述 | 类型 | 是否必填 | 说明 |
---|---|---|---|---|
Partner | 渠道号 | String | 是 | |
AccessToken | 用户唯一标识 | String | 是 | |
GroupId | 内容id | String | 是 | “获取个性化内容”接口返回该字段 |
CustomVideoDefinition | 指定视频分辨率 | String | 否 | 枚举值:360p、480p、540p、720p、1080p、all(全部)。 横版短视频支持:360p(默认)、480p、540p、720p、1080p 竖版小视频支持:540p(默认) 默认不传时,短视频下发360p,小视频下发540p,传all时下发视频所有的分辨率。 如果请求的分辨率对于该视频不存在,则会自动降级一档返回内容作为兜底。 特别注意: 分辨率的升档会增加cdn的播放成本,需客户侧谨慎评估,详细咨询火山引擎侧。 |
参数 | 描述 | 类型 | 说明 |
---|---|---|---|
Result | 内容详情 | Result | 内容的详细信息 |
public static void main(String[] args) { //初始化一个service StreamConsumerService streamConsumerService = StreamConsumerServiceImpl.getInstance(); //设置ak,sk 此为请求的凭证 streamConsumerService.setAccessKey("your ak"); streamConsumerService.setSecretKey("your sk"); //初始化一个request SingleArticleRequest req = new SingleArticleRequest(); req.setTimestamp(LocalDateTime.now().toEpochSecond(ZoneOffset.of("+8"))); req.setAccessToken("your accessToken"); req.setPartner("your partner"); req.setGroupId("xxx"); try { SingleArticleResponse response = streamConsumerService.singleArticle(req); System.out.println(JSON.toJSONString(response)); } catch (Exception e) { e.printStackTrace(); } }
{ "ResponseMetadata": { "Action": "SingleArticle", "Region": "cn-north-1", "RequestId": "20221102133859010150134144250DFB2B", "Service": "content", "Version": "2021-01-01" }, "Result": { "Abstract": "...", "ArticleClass": "短视频", "ArticleUrl": "...", "CommentCount": 104, "CommentUrl": "...", "CoverImageList": [ { "Height": 828, "Mimetype": "image/jpeg", "Uri": "...", "Url": "...", "UrlList": [ { "Url": "..." }, { "Url": "..." }, { "Url": "..." } ], "Width": 1472 } ], "CoverMode": 1, "DiggCount": xxx, "DiggStatus": false, "Duration": 347, "GroupId": "...", "HasVideo": true, "ImageList": [], ... "PublishTime": 1662030190, "ShareCount": 12, "ShareUrl": "...", "Title": "...", "UserInfo": { "AvatarUrl": "...", "Description": "...", "Follow": false, "FollowerCount": 1020582, "HomePage": "...", "IsFollowed": false, "IsFollowing": false, "Name": "...", "UserId": "...", "UserVerified": true, "VerifiedContent": "..." }, "WatchCount": xx, "videoDetail": { "Status": 10, "VideoDuration": 347, "VideoList": [ { ... "Bitrate": 1191100, "CodecType": "h264", "Definition": "720p", "Encrypt": false, "FPS": 30, ... "MainUrl": "...", "Size": 51694194, "Vheight": 720, "Vtype": "mp4", "Vwidth": 1280 },... ] } } }
传入多个GroupId,批量的获取内容
请求方法
GET/POST(Content-Type: application/x-www-form-urlencoded)
请求url
https://mercury.volcengineapi.com/?Action=MultiArticle&Version=2021-01-01
请求header
ServiceName:content
参数 | 描述 | 类型 | 是否必填 | 说明 |
---|---|---|---|---|
Partner | 渠道号 | String | 是 | |
AccessToken | 用户唯一标识 | String | 是 | |
GroupIds | 内容id列表 | String | 是 | 最多支持20个GroupId,多个GroupId以英文逗号进行分隔 |
CustomVideoDefinition | 指定视频分辨率 | String | 否 | 枚举值:360p、480p、540p、720p、1080p、all(全部)。 横版短视频支持:360p(默认)、480p、540p、720p、1080p 竖版小视频支持:540p(默认) 默认不传时,短视频下发360p,小视频下发540p,传all时下发视频所有的分辨率。 如果请求的分辨率对于该视频不存在,则会自动降级一档返回内容作为兜底。 特别注意: 分辨率的升档会增加cdn的播放成本,需客户侧谨慎评估,详细咨询火山引擎侧。 |
参数 | 描述 | 类型 | 说明 |
---|---|---|---|
Result | 内容详情 | Result | 内容的详细信息 |
public static void main(String[] args) { //初始化一个service StreamConsumerService streamConsumerService = StreamConsumerServiceImpl.getInstance(); //设置ak,sk 此为请求的凭证 streamConsumerService.setAccessKey("your ak"); streamConsumerService.setSecretKey("your sk"); //初始化一个request MultiArticlesRequest req = new MultiArticlesRequest(); req.setTimestamp(LocalDateTime.now().toEpochSecond(ZoneOffset.of("+8"))); req.setAccessToken("your accessToken"); req.setPartner("your partner"); List<String> groupIdList = new ArrayList<>(); groupIdList.add("your groupId"); req.setGroupIds(groupIdList); try { MultiArticlesResponse response = streamConsumerService.multiArticles(req); System.out.println(JSON.toJSONString(response)); } catch (Exception e) { e.printStackTrace(); } }
{ "ResponseMetadata": { "Action": "MultiArticle", "Region": "cn-north-1", "RequestId": "202211021731570101501011071F0DBE53", "Service": "content", "Version": "2021-01-01" }, "Result": { "articleInfos": [ { "Abstract": "...", "ArticleClass": "短视频", "ArticleUrl": "...", "CommentCount": 104, "CommentUrl": "...", "CoverImageList": [ { "Height": 828, "Mimetype": "image/jpeg", "Uri": "...", "Url": "...", "UrlList": [ { "Url": "..." }, { "Url": "..." }, { "Url": "..." } ], "Width": 1472 } ], "CoverMode": 1, "DiggCount": 2274, "DiggStatus": false, "Duration": 347, "GroupId": "...", "HasVideo": true, "HomePage": "...", ... "PublishTime": 1662030190, "ShareCount": 12, "ShareUrl": "...", "Title": "...", "UserInfo": { "AvatarUrl": "...", "CreateTime": 0, "Description": "...", "Follow": false, "FollowerCount": 1020547, "HomePage": "...", "IsFollowed": false, "IsFollowing": false, "Name": "...", "UserId": "...", "UserVerified": true, "VerifiedContent": "..." }, "WatchCount": 76022, "videoDetail": { "Status": 10, "VideoDuration": 347, "VideoList": [ { ... "Bitrate": 1191100, "CodecType": "h264", "Definition": "720p", "Encrypt": false, "FPS": 30, ... "MainUrl": "...", "Size": 51694194, "UrlExpire": 1667385465, "Vheight": 720, "Vtype": "mp4", "Vwidth": 1280 },... ] } } ] } }