POLYV Web上传插件(V2.0)

说明:
1. 本文档从用户角度简单概述了polyv web上传插件的使用方法。
2. V2.0 版本的使用与 V1.0 版本完全一致,因此无需更改原有的接口调用及逻辑,只要更换polyv-upload.js的调用地址即可。(推荐使用 V2.0 版本

一、功能:

  1. 上传文件
    1). 上传前可以进行选择分类、添加标签、选择视频优化处理、修改文件名及文件说明等操作
    2). 可选择默认的上传目录
    3). 可设置是否对源文件进行编码
    4). 支持断点续传。中途断网或浏览器因故障等原因重启后同个文件可以实现从断点续传。(仅在浏览器版本>=IE11及主流浏览器下支持实现该功能)
    5). 同时选择多个文件、上传过程显示进度
  2. 查看视频
    1). 查看视频列表
    2). 根据标题关键字搜索视频
    3). 获取具体的视频信息
    4). 更换封面
      a.上传新图片作为封面
      b.选择视频截图作为封面
      c.选择最近上传的图片作为封面
  3. 可选择只显示“上传列表”或“视频列表”或显示全部
  4. 可调用接口(response、uploadSuccess、uploadFail)返回视频信息
  5. 提供打开、关闭插件的方法

二、浏览器支持

  • 支持大部分主流浏览器,IE浏览器兼容IE9及IE9以上。
  • 在支持HTML5新特性的浏览器中,支持断点续传,最大可上传30GB的文件。
  • 反之,在不支持HTML5新特性的浏览器中(如IE9),不支持断点续传功能,最大可上传2GB的文件。

三、入门教程:

1、首先在调用该插件的页面上添加一个按钮:

<input type="button" id="upload" value="上传"></input>

2、引入POLYV上传插件的js文件

<script src="//v.polyv.net/file/plug-in-v2/polyv-upload.js"></script>

3、添加脚本,初始化上传参数并新建一个上传实例。

var obj = {
    uploadButtton: 'upload',
    userid: data.userid,
    ts: data.ts,
    hash: data.hash,
    sign: data.sign,
    component: 'all', 
    cataid: 1499657507273, 
    luping: 1,
    extra: {
        keepsource: 1,
    }
};
upload = new PolyvUpload(obj);

4、上传参数解释:

  • uploadButtton:打开上传控件按钮的id
  • userid:可以在“云点播”后台->“设置”->“API接口”页面中找到您的userid
  • ts:13位的毫秒级时间戳
  • hash:是根据将ts和writeToken按照顺序拼凑起来的字符串进行MD5计算得到的值
  • sign:是根据将secretkey和ts按照顺序拼凑起来的字符串进行MD5计算得到的值
  • component(可选):可以设置为videoList(只显示视频列表)、 uploadList(只显示上传列表)、all(默认值,显示上传列表和视频列表)
  • cataid(可选):上传目录id,默认值为1
  • luping(可选):开启视频课件优化处理,对于上传录屏类视频清晰度有所优化。可设置为01,默认值为0,表示不开启课件优化
  • keepsource(可选):源文件播放(不对源文件进行编码)。可设置为0(对源文件进行编码)或1(源文件播放)

5、获取用户信息的代码示例(PHP):

/* 
说明:以下的userid、secretkey、writeToken、readToken可以在“云点播”后台->“设置”->“API接口”页面中找到。
*/
$userid = "your userid";
$secretkey = "your sercrety";
$writeToken = "your writeToken";
$readToken = "your readToken";

$ts = time() * 1000;
$hash = md5($ts . $writeToken);
$sign = md5($secretkey . $ts);

四、使用文档

1.上传参数options

  • uploadButtton:打开上传控件按钮的id
  • userid
  • ts:13位的毫秒级时间戳
  • hash:是根据将ts和writeToken按照顺序拼凑起来的字符串进行MD5计算得到的值
  • sign:是根据将secretkey和ts按照顺序拼凑起来的字符串进行MD5计算得到的值
  • component(可选):可以设置为videoList(只显示视频列表)、 uploadList(只显示上传列表)、all(默认值,显示上传列表和视频列表)
  • cataid(可选):上传目录id,默认值为1
  • luping(可选):开启视频课件优化处理,对于上传录屏类视频清晰度有所优化。可设置为01,默认值为0,表示不开启课件优化
  • extra(可选): object
    可添加的属性为keepsource:源文件播放(不对源文件进行编码)。可设置为0(对源文件进行编码)或1(源文件播放)
    javascript
    {
    keepsource: 1, // 源文件播放(不对源文件进行编码)
    }
  • response(可选): function,返回指定视频的信息时的回调函数
  • uploadSuccess(fileData)(可选):function,当前文件上传完毕时触发的回调函数
  • uploadFail(err)(可选):function,当前文件上传失败时触发的回调函数

2.方法

  • update(data): 用于更新ts、hash、sign3个信息
  • closeWrap(): 关闭插件
  • openWrap(): 打开插件

五、demo演示和下载

demo演示:POLYV Web上传插件演示
demo下载:POLYV Web上传插件源码

以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

根据视频vid查询视频的授权播放开关状态

接口URL

http://api.polyv.net/v2/video/{userid}/authplay-status

接口说明

根据视频vid获取视频的授权播放开关状态

支持格式

JSON

请求方式

GET

请求参数

参数名 必选 类型及范围 说明
ptime true string 当前时间的毫秒级时间戳(13位),30分钟内有效
userid true string 用户id(拼接在url,无需另外传参数)
sign true string 签名
vid true string 视频id

注意事项

所有有值的参数,按照字母排序方式以key=value&key=value的格式串起来,最后拼上secretkey,以SHA-1方式加密并全部大写化。(注意,当参数没有传递,或者传递了空值,sign不需要将此参数计算进去)

例如:api传递了ptime,vid。ptime为1,vid为test1,userid对应用户的secretkey为test2
则sign的值为:ptime=1&vid=test1test2经过SHA-1加密后大写化为: C2B1558D697EA3AF4ED2FC90152751860C1E2163。

返回错误结果JSON示例

{
  "code": 400,
  "status": "error",
  "message": "ptime is too old.",
  "data": ""
}

返回正确结果JSON示例

{
  "code": 200,
  "status": "success",
  "message": "success",
  "data": 1
}

返回结果data为0表示开关关闭,1表示开关开启

字段说明

字段 说明
code 返回码
status 返回状态
message 返回信息
data 操作结果

响应代码与响应信息对应

code message 说明
400 sign can not be empty.
400 ptime is too old.
400 ptime is illegal. ptime超出当前时间3分钟
400 Could not find user by userid.
400 the sign is not right.
401 vid为空.
403 用户的视频下找不到该视频.
500 获取失败,请查看后台日志. 后台抛异常
200 success. 查询成功

PHP示例代码

<?php
header("Content-type: text/html; charset=utf-8");
$userid="3828390191";
//$jsonp="a";
$ptime=time()*1000;//13位
$vid="3828390191de2b3fd3467c36187aac08_3";
$secretkey="tIQp4ATe9Z";
if(empty($jsonp)){
    $str="ptime=".$ptime."&vid=".$vid.$secretkey;
}else{
    $str="jsonp=".$jsonp."&ptime=".$ptime."&vid=".$vid.$secretkey;
}
echo $str.'';
$hash=strtoupper(sha1($str));
echo $hash.'';
$url="http://api.polyv.net/v2/video/{$userid}/authplay-status?vid={$vid}&ptime={$ptime}&sign={$hash}";

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$output = curl_exec($ch);
curl_close($ch);
//打印获得的数据
print_r($output);
?>

签名规则:

将非空的请求参数按照参数名字典顺序排列,连接参数名与参数值,并在尾部加上secretkey,生成40位大写SHA1值,作为sign。 以下是示例过程:

1、请求参数为

"ptime" = "1493188350000"
"vid" = "3828390191de2b3fd3467c36187aac08_3"

2、将请求参数按照参数名字典顺序排列

"ptime" = "1493188350000"
"vid" = "3828390191de2b3fd3467c36187aac08_3"

3、连接字符串
连接参数名与参数值,并在尾部加上secretkey(secretkey的值为tIQp4ATe9Z),如下:

ptime=1493188350000&vid=3828390191de2b3fd3467c36187aac08_3tIQp4ATe9Z

4、生成签名sign

4CE511177FD5A8A3E56EB31A20776C0DE157519A
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

根据vid批量修改视频的授权播放开关状态

接口URL

http://api.polyv.net/v2/video/{userid}/authplay-status

接口说明

根据vid设置单个视频/多个视频的授权播放开关状态

支持格式

JSON

请求方式

POST

请求参数

参数名 必选 类型及范围 说明
ptime true string 当前时间的毫秒级时间戳(13位),30分钟内有效
userid true string 用户id(拼接在url,无需另外传参数)
sign true string 签名
vids true string 多个视频id,用英文逗号隔开
playauth false number 是否开启,默认为开启

注意事项

所有有值的参数,按照字母排序方式以key=value&key=value的格式串起来,最后拼上secretkey,以SHA-1方式加密并全部大写化。(注意,当参数没有传递,或者传递了空值,sign不需要将此参数计算进去)

例如:api传递了ptime,vid。ptime为1,vid为test1,userid对应用户的secretkey为test2
则sign的值为:ptime=1&vid=test1test2经过SHA-1加密后大写化为: C2B1558D697EA3AF4ED2FC90152751860C1E2163。

返回错误结果JSON示例

{
  "code": 400,
  "status": "error",
  "message": "ptime is too old.",
  "data": ""
}

返回正确结果JSON示例

{
  "code": 200,
  "status": "success",
  "message": "success",
  "data": 1
}

返回结果data表示成功修改的数量.

字段说明

字段 说明
code 返回码
status 返回状态
message 返回信息
data 操作结果

响应代码与响应信息对应

code message 说明
400 sign can not be empty.
400 ptime is too old.
400 ptime is illegal. ptime超出当前时间3分钟
400 Could not find user by userid.
400 the sign is not right.
401 vids为空.
500 修改失败,请查看后台日志. 后台抛异常
200 success. 修改成功

PHP示例代码

<?php
header("Content-type: text/html; charset=utf-8");
$userid="3828390191";
//$jsonp="a";
$ptime=time()*1000;//13位
$vids="3828390191de2b3fd3467c36187aac08_3,3828390191de2b3fd3467c36187aac11_3";
$playauth=1;
$secretkey="tIQp4ATe9Z";
if(empty($jsonp)){
    $str="playauth=".$playauth."&ptime=".$ptime."&vids=".$vids.$secretkey;
}else{
    $str="jsonp=".$jsonp."&playauth=".$playauth."&ptime=".$ptime."&vids=".$vids.$secretkey;
}
echo $str.'';
$hash=strtoupper(sha1($str));
echo $hash.'';
$url="http://api.polyv.net/v2/video/{$userid}/authplay-status";
$post_data = array (
    //"jsonp" => $jsonp,
    "vids" => $vids,
    "ptime" => $ptime,
    "sign" => $hash,
    "playauth" => $playauth,
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// post数据
curl_setopt($ch, CURLOPT_POST, 1);
// post的变量
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
$output = curl_exec($ch);
curl_close($ch);
//打印获得的数据
print_r($output);
?>

签名规则:

将非空的请求参数按照参数名字典顺序排列,连接参数名与参数值,并在尾部加上secretkey,生成40位大写SHA1值,作为sign。 以下是示例过程:

1、请求参数为

"ptime" = "1493188350000"
"vids" = "3828390191de2b3fd3467c36187aac08_3,3828390191de2b3fd3467c36187aa111_3"
"playauth" = 1

2、将请求参数按照参数名字典顺序排列

"playauth" = 1
"ptime" = "1493188350000"
"vids" = "3828390191de2b3fd3467c36187aac08_3,3828390191de2b3fd3467c36187aa111_3"

3、连接字符串
连接参数名与参数值,并在尾部加上secretkey(secretkey的值为tIQp4ATe9Z),如下:

playauth=1&ptime=1493188350000&vids=3828390191de2b3fd3467c36187aac08_3,3828390191de2b3fd3467c36187aa111_3tIQp4ATe9Z

4、生成签名sign

2985467DD8B41D6DBDAF64427D21432A93E4FB3B
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

根据授权播放开关状态查询视频

接口URL

http://api.polyv.net/v2/video/{userid}/list

接口说明

根据授权播放开关状态查询视频

支持格式

JSON

请求方式

GET

请求参数

参数名 必选 类型及范围 说明
ptime true string 当前时间的毫秒级时间戳(13位),30分钟内有效
sign true string 签名
userid true string 用户id(拼接在url,无需另外传参数)
playauth true number 是否开启(开启为1,没开启为0)
numPerPage false int 每页取多少条数据(默认为99)
pageNum false int 取第几页(默认为1)

注意事项

所有有值的参数,按照字母排序方式以key=value&key=value的格式串起来,最后拼上secretkey,以SHA-1方式加密并全部大写化。(注意,当参数没有传递,或者传递了空值,sign不需要将此参数计算进去)

例如:api传递了ptime,vid。ptime为1,vid为test1,userid对应用户的secretkey为test2
则sign的值为:ptime=1&vid=test1test2经过SHA-1加密后大写化为: C2B1558D697EA3AF4ED2FC90152751860C1E2163。

返回错误结果JSON示例

{
  "code": 400,
  "status": "error",
  "message": "ptime is too old.",
  "data": ""
}

返回正确结果JSON示例

{
  "code": 200,
  "status": "200",
  "message": "195",
  "data": [
    {
      "duration": "00:02:28",
      "vid": "8l8v64820da93146cfb86697d90c7f63_8",
      "date": "2017-11-17 14:39",
      "uploader": "主账号",
      "cataid": "1490846401832",
      "sourceFileSize": "15.95 MB",
      "firstImage": "http://img.videocc.net/uimage/8/8l8v64820d/3/8l8v64820da93146cfb86697d90c7f63_0.jpg",
      "cataname": "4",
      "title": "d带宽s(1).mp4",
      "status": "审核不通过"
    },
    {
      "duration": "00:00:02",
      "vid": "8l8v64820d40d49375523f393bfa53aa_8",
      "date": "2017-11-17 14:04",
      "uploader": "主账号",
      "cataid": "1494991264900",
      "sourceFileSize": "225.08 KB",
      "firstImage": "http://img.videocc.net/uimage/8/8l8v64820d/a/8l8v64820d40d49375523f393bfa53aa_0.jpg",
      "cataname": "<script>alert()</script>",
      "title": "pt_1450256414551.mp4",
      "status": "已发布"
    },
    {
      "duration": "00:59:54",
      "vid": "8l8v64820d727ad8dcbd74c53d4e47d6_8",
      "date": "2017-10-11 11:42",
      "uploader": "主账号",
      "cataid": "1461120809847",
      "sourceFileSize": "227.61 MB",
      "firstImage": "http://img.videocc.net/uimage/8/8l8v64820d/6/8l8v64820d727ad8dcbd74c53d4e47d6_5.jpg",
      "cataname": "uu",
      "title": "wKjJ0VZ6d6zxwMtWCNCEmYWT2wk757",
      "status": "已发布"
    },
    {
      "duration": "00:01:14",
      "vid": "8l8v64820df4e2f48bd5d9b65690c9d4_8",
      "date": "2017-07-20 14:50",
      "uploader": "主账号",
      "cataid": "1407743526800",
      "sourceFileSize": "23.57 MB",
      "firstImage": "http://img.videocc.net/uimage/8/8l8v64820d/4/8l8v64820df4e2f48bd5d9b65690c9d4_5.jpg",
      "cataname": "广告分类11111111111111111111",
      "title": "1122daffd",
      "status": "已发布"
    },
    {
      "duration": "00:05:05",
      "vid": "8l8v64820dcad904c482b2edba9be34f_8",
      "date": "2017-11-01 11:31",
      "uploader": "API",
      "cataid": "1407743526800",
      "sourceFileSize": "38.42 MB",
      "firstImage": "http://img.videocc.net/uimage/8/8l8v64820d/f/8l8v64820dcad904c482b2edba9be34f_0.jpg",
      "cataname": "广告分类11111111111111111111",
      "title": "朴树 - 平凡之路-test.mkv",
      "status": "已发布"
    }
  ]
}

返回结果data表示成功修改的数量.

字段说明

字段 说明
code 返回码
status 返回状态
message 返回信息
data 操作结果

响应代码与响应信息对应

code message data 说明
400 sign can not be empty. 加密串为空
400 ptime is too old. 时间戳过期
400 ptime is illegal. ptime超出当前时间3分钟
400 Could not find user by userid. userid不存在
400 the sign is not right. 加密串错误
500 查询失败. 后台抛异常
200 视频列表的总数 分页查询到的视频列表 查询成功

PHP示例代码

<?php
header("Content-type: text/html; charset=utf-8");
$userid="3828390191";
//$jsonp="a";
$ptime=time()*1000;//13位
$playauth="1";
$secretkey="tIQp4ATe9Z";
if(empty($jsonp)){
  $str="playauth=".$playauth."&ptime=".$ptime.$secretkey;
}else{
  $str="jsonp=".$jsonp."&playauth=".$playauth."&ptime=".$ptime.$secretkey;
}
echo $str.'';
$hash=strtoupper(sha1($str));
echo $hash.'';
$url="http://api.polyv.net/v2/video/{$userid}/list?playauth={$playauth}&ptime={$ptime}&sign={$hash}";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

$output = curl_exec($ch);
curl_close($ch);
//打印获得的数据
print_r($output);
?>

签名规则:

将非空的请求参数按照参数名字典顺序排列,连接参数名与参数值,并在尾部加上secretkey,生成40位大写SHA1值,作为sign。 以下是示例过程:

1、请求参数为

"ptime" = "1493188350000"
"playauth" = "1"

2、将请求参数按照参数名字典顺序排列

"playauth" = "1"
"ptime" = "1493188350000"

3、连接字符串
连接参数名与参数值,并在尾部加上secretkey(secretkey的值为tIQp4ATe9Z),如下:

playauth=1&ptime=1493188350000tIQp4ATe9Z

4、生成签名sign

7198CB4BAE7484C01EA1A1566D0210FF18EA1849
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

批量获取视频日志

接口URL

http://api.polyv.net/v2/viewlog/{userid}/monthly/{month}

接口说明

通过自然月批量获取某个用户的视频日志

支持格式

JSON

请求方式

GET

请求数限制

TRUE

请求参数

参数名 必选 类型及范围 说明
userid true string POLYV用户ID
month true string 查询月份,格式为yyyyMM
ptime true string 当前时间的毫秒级时间戳(13位),3分钟内有效
sign true string 签名,为40位大写的SHA1值
numPerPage false int 每一页的大小,默认为99
pageNum false int 第几页,默认为1

注意事项

sign的拼接规则是:month=变量&numPerPage=变量&pageNum=变量&ptime=变量secrectKey,再经过SHA-1加密并大写化。
这里要注意,如果这些参数的值为空串,则sign里就不用拼上这些变量

返回正确结果JSON示例

{
  "code": 200,
  "status": "success",
  "message": "success",
  "data": [
    {
      "playId": "1483692000578X1164631",
      "userId": "cca90d24f7",
      "videoId": "cca90d24f752ef74a0200a01bbac9488_c",
      "playDuration": 25,
      "stayDuration": 97,
      "currentTimes": 558,
      "duration": 1539,
      "flowSize": 21144147,
      "sessionId": "",
      "param1": "",
      "param2": "",
      "param3": "",
      "param4": "",
      "param5": "",
      "ipAddress": "59.42.28.226",
      "country": "中国",
      "province": "广东",
      "city": "广州",
      "isp": "电信",
      "referer": "http://my.polyv.net/front/video/preview?vid=cca90d24f752ef74a0200a01bbac9488_c",
      "userAgent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36",
      "operatingSystem": "Windows",
      "browser": "Chrome",
      "isMobile": "N",
      "currentDay": "2017-01-06",
      "currentHour": 16,
      "createdTime": 1483692131000,
      "lastModified": 1483694042000
    },
    {
      "playId": "1483670488973X1301441",
      "userId": "cca90d24f7",
      "videoId": "cca90d24f752ef74a0200a01bbac9488_c",
      "playDuration": 477,
      "stayDuration": 538,
      "currentTimes": 532,
      "duration": 1539,
      "flowSize": 56641657,
      "sessionId": "",
      "param1": "",
      "param2": "",
      "param3": "",
      "param4": "",
      "param5": "",
      "ipAddress": "59.42.28.226",
      "country": "中国",
      "province": "广东",
      "city": "广州",
      "isp": "电信",
      "referer": "http://my.polyv.net/secure/video/",
      "userAgent": "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36",
      "operatingSystem": "Windows",
      "browser": "Chrome",
      "isMobile": "N",
      "currentDay": "2017-01-06",
      "currentHour": 10,
      "createdTime": 1483670565000,
      "lastModified": 1483673176000
    }
  ],
  "total": 3
}

返回错误结果JSON示例

{
  "code": 400,
  "status": "error",
  "message": "ptime is too old.",
  "data": ""
}

字段说明

字段 说明
code 返回码
status 返回状态
message 返回信息
data 分类下的视频大小
playId 表示此次播放动作的ID
userId 用户ID
videoId 视频ID
playDuration 播放时长 (用户观看的总时间 ,例如:18:00开始看一个视频,看到了18:30,这30分钟就是播放时长)
stayDuration 缓存时长
currentTimes 播放时间 (用户观看的最后时间,例如:停止观看视频的时候,进度条最后的分钟数为35分钟,播放时间就是35分钟)
duration 视频总时长
flowSize 流量大小
sessionId 用户自定义参数,如学员ID等 ,该参数做了UrlSafeBase64的加密,需要做解密
param1/2/3/4/5 POLYV系统参数
ipAddress IP地址
country 国家
province 省份
city 城市
isp ISP运营商
referer 播放视频页面地址
userAgent 用户设备
operatingSystem 操作系统
browser 浏览器
isMobile 是否为移动端
currentDay 日志查询日期 (格式为:yyyy-MM-dd)
currentHour 日志查看时间
createdTime 播放开始时间 (格式为13位的时间戳)
lastModified 日志更新日期 (格式为13位的时间戳)

php请求示例

<?php
$userid="efbb4ae8ac";
$month="201709";//查询月份,格式为yyyyMM
$ptime = time()*1000;
$numPerPage=1000;
$pageNum=1;
$secrectKey = "hbjCVBhnth";
$sign=strtoupper(sha1("month=$month&numPerPage=$numPerPage&pageNum=$pageNum&ptime=$ptime".$secrectKey));
$url="http://api.polyv.net/v2/viewlog/$userid/monthly/$month?month=$month&ptime=$ptime&numPerPage=$numPerPage&pageNum=$pageNum&sign=$sign";
$ch=curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
$output = curl_exec($ch);
curl_close($ch);
print_r($output);
?>

响应代码与响应信息对应

code message 说明
400 ptime is illegal. 时间戳格式问题,或者时间戳超过当前时间3分钟
400 sign can not be empty. 加密串为空
400 Could not find user by userid. 用户id不存在
400 ptime is too old. 时间戳过期(3分钟过期)
400 the sign is not right. 加密串错误
401 pageNum和numPerPage必须为大于0的正整数. 分页参数不正确
402 month必须为合法的yyyyMM格式. month格式内容不正确
500 查询失败. 后台发生错误异常
200 success 查询成功
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

删除视频问答条目接口

接口URL

http://api.polyv.net/v2/video/{userid}/del-video-exam

接口说明

删除视频的问答题目

支持格式

JSON

HTTP请求方式

POST, GET

请求数限制

TRUE

请求参数

参数名 必选 类型及范围 说明
userid true string 用户ID
examId true string 问答条目ID
vid true string 视频ID
sign true string 签名,40位大写的sha1值
ptime true string 当前13位毫秒级时间戳,3分钟内有效
format false string 默认返回json格式,如果format=xml返回xml格式
jsonp false string 例如,正常情况{error:0,data:””},加 jsonp=a后返回a({error:0,data:””})

JSON示例

{
  code: 200,
  status: "success",
  message: "success",
  data:"success"
}

返回错误json

{
  "code":400,
  "status":"error",
  "message":"sign can not be empty.",
  "data":""
}
{
  "code":400,
  "status":"error",
  "message":"vid不能为空。",
  "data":""
}
{
  "code":400,
  "status":"error",
  "message":"examId不能为空。",
  "data":""
}
{
  "code":400,
  "status":"error",
  "message":"该问答条目不存在。",
  "data":""
}
{
  "code":400,
  "status":"error",
  "message":"不允许删除该问答条目。",
  "data":""
}

字段说明

字段 说明
data success表示删除成功

PHP示例代码

<?php
  $userid="2d939377c2";
  $vid="2d939377c23a37d2b0a2428006755627_2";
  $examId="14fedbf06a4";
  $ptime=time()*1000;
  $secretkey="3OmoLbTlHu";
  $str="examId=$examId&ptime=$ptime&vid=$vid".$secretkey;
  $sign=strtoupper(sha1($str));
  $url="http://api.polyv.net/v2/video/$userid/del-video-exam?examId=$examId&ptime=$ptime&sign=$sign&vid=$vid";
  $content = file_get_contents($url);
  echo $content;
?>

签名规则:

将非空的请求参数按照参数名字典顺序排列,连接参数名与参数值,并在尾部加上secretkey,生成40位大写SHA1值,作为sign。 以下是示例过程:

1、请求参数为

"examId" = "14fedbf06a4"
"ptime" = "1493188350000"
"vid" = "3828390191de2b3fd3467c36187aac08_3"

2、将请求参数按照参数名字典顺序排列

"examId" = "14fedbf06a4"
"ptime" = "1493188350000"
"vid" = "3828390191de2b3fd3467c36187aac08_3"

3、连接字符串
连接参数名与参数值,并在尾部加上secretkey(secretkey的值为tIQp4ATe9Z),如下:

examId=14fedbf06a4&ptime=1493188350000&vid=3828390191de2b3fd3467c36187aac08_3tIQp4ATe9Z

4、生成签名sign

4CE511177FD5A8A3E56EB31A20776C0DE157519A
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

通过cataid获取视频目录空间

接口URL

http://api.polyv.net/v2/cata/size

接口说明

通过cataid获取视频目录空间

支持格式

JSON

请求方式

GET

请求数限制

TRUE

请求参数

参数名 必选 类型及范围 说明
userid true string POLYV用户ID
cataid true string 目录分类id, (id=1,表示默认分类)
ptime true string 当前时间的毫秒级时间戳(13位),3分钟内有效
sign true string 签名,为40位大写的SHA1值

注意事项

sign的拼接规则是:cataid=参数&ptime=参数&userid=变量secretkey,再经过SHA-1加密并大写化。
这里要注意,如果这些参数的值为空串,则sign里就不用拼上这些变量

PHP示例代码

<?php
header("Content-type: text/html; charset=utf-8");
$userid="XXXXXXXX"; //用户id
$ptime= time()*1000;  //获取当前时间戳
$secretkey = "XXXXXXXX"; //用户对应的secretkey
$cataid = "XXXXXXXXX"; //分类id
$str="cataid=".$cataid."&ptime=".$ptime."&userid=".$userid.$secretkey;
$sign = strtoupper(sha1($str));
$url="http://api.polyv.net/v2/cata/size?userid=$userid&cataid=$cataid&sign=$sign&ptime=$ptime";
$ch = curl_init() or die ( curl_error() );
curl_setopt( $ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_CUSTOMREQUEST, "GET");
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT, 360);
$response = curl_exec ( $ch );
curl_close ( $ch );
echo $response;
?>

返回正确结果JSON示例

{
  "code": 200,
  "status": "success",
  "message": "success",
  "data": 237872181
}

返回错误结果JSON示例

{
  "code": 400,
  "status": "error",
  "message": "ptime is too old.",
  "data": ""
}

字段说明

字段 说明
code 返回码
status 返回状态
message 返回信息
data 分类下的视频大小

响应代码与响应信息对应

code message 说明
400 userid is blank. 用户名为空
400 Could not find user by userid. 用户id不存在
400 the sign is not right. 加密串错误
400 cataid不存在. cataid不存在
400 cataid格式不正确. cataid不是纯数字
500 获取失败. 后台发生错误异常
200 success 查询成功
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

批量获取视频播放次数

接口URL

http://api.polyv.net/v2/data/{userid}/play-times

接口说明

通过多个vid批量获取播放次数。

支持格式

JSON

请求方式

POST,GET

请求数限制

TRUE

请求参数

参数名 必选 类型 说明
vids true string 多个视频的vid,用英文逗号隔开
ptime true string 13位当前时间毫秒级时间戳
sign true string 签名,40位大写的sha1值
realTime false string 是否实时,1表示实时,0表示非实时

响应成功JSON示例:

{
  code: 200,
  status: "success",
  message: "success",
  data: [
  {
    vid: "8f8482aaab4b34dec11fdb14b30d71d3_8",
    times: 295
  },
  {
    vid: "8f8482aaab9483da6c818c883643220e_8",
    times: 0
  }
  ]
}

响应失败JSON示例:

{
    "code":400,
    "status":"error",
    "message":"添加失败.",
    "data":""
}

字段说明

参数名 说明
code 返回状态码
status 返回状态值
message 返回信息
data 返回数据
vid 视频vid
times 播放次数

php请求示例

<?php
  header("Content-type: text/html; charset=utf-8");
  $userid="8f8482aaab";
  $realTime="1";
  $vids = "8f8482aaab4b34dec11fdb14b30d71d3_8,8f8482aaab9483da6c818c883643220e_8";
  $ptime= time()*1000;
  $secretkey = "AiDQw1mAmi";
  $str = "ptime=$ptime&realTime=$realTime&vids=$vids".$secretkey;
  $sign = strtoupper(sha1($str));
  $url="http://api.polyv.net/v2/data/{$userid}/play-times";
  $post_data = array (
  "ptime" => $ptime,
      "vids" => $vids,
      "sign" => $sign,
      "realTime" => $realTime,
  );
  $ch = curl_init();
  curl_setopt($ch, CURLOPT_URL, $url);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  // post数据
  curl_setopt($ch, CURLOPT_POST, 1);
  // post的变量
  curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
  $output = curl_exec($ch);
  curl_close($ch);
  //打印获得的数据
  print_r($output);
?>

签名规则:

sign生成示例: 

1、将请求参数按照参数名字典顺序排列为

ptime = "1501055103000"
vids = "8f8482aaab4b34dec11fdb14b30d71d3_8,8f8482aaab9483da6c818c883643220e_8"
realTime = "1"

2、连接字符串 连接参数名与参数值,并在尾部加上secretkey(此处secretkey的值为ABIEn1UJht),如下:

ptime=1501055103000&realTime=1&vids=8f8482aaab4b34dec11fdb14b30d71d3_8,8f8482aaab9483da6c818c883643220e_8AiDQw1mAmi

3、sign为40位大写的SHA1值

DC4E9F011DCE46A37711048041D8653A7D30DB17
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

批量修改视频的授权方式

接口URL

http://api.polyv.net/v2/config/{userid}/hlslevel

接口说明

通过vids批量修改视频的授权方式。

支持格式

JSON

请求方式

POST

请求数限制

TRUE

请求参数

参数名 必选 类型 说明
userid string 用户ID
hlslevel string 加密授权参数,值为open/web/app之一,open为开放授权,web为WEB授权,app为APP授权
ptime string 13位当前时间毫秒级时间戳
vids string 多个视频的vid,用英文逗号隔开
sign string 签名,40位大写的sha1值

响应成功JSON****示例:

{
code: 200,
status: "success",
message: "success",
data: 2
}

响应失败JSON****示例:

{
"code":400,
"status":"error",
"message":"ptime is too old.",
"data":""
}

字段说明

参数名 说明
code 返回状态码
status 返回状态值
message 返回信息
data 返回数据

php请求示例

<?php
header("Content-type: text/html; charset=utf-8");
$userid="7d26575efe";
$hlslevel= "web";  //值为open/web/app之一
$vids = "7d26575efe9eef80bafa426ff6dd7dc4_7,7d26575efebc3f04e1632fee60d34972_7";
$ptime= time()*1000;
$secretkey = "ABIEn1UJht";

$str = "hlslevel=$hlslevel&ptime=$ptime&vids=$vids".$secretkey;
$sign = strtoupper(sha1($str));

$url="http://api.polyv.net/v2/config/{$userid}/hlslevel";
$post_data = array (
"hlslevel" => $hlslevel,
"ptime" => $ptime,
"vids" => $vids,
"sign" => $sign,
);
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
// post数据
curl_setopt($ch, CURLOPT_POST, 1);
// post的变量
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
$output = curl_exec($ch);
curl_close($ch);
//打印获得的数据
print_r($output);
?>

签名规则:

sign生成示例: 

1、将请求参数按照参数名字典顺序排列为

hlslevel = "web"
ptime = "1500950616000"
vids = "7d26575efe9eef80bafa426ff6dd7dc4_7,7d26575efebc3f04e1632fee60d34972_7"

2、连接字符串 连接参数名与参数值,并在尾部加上secretkey(此处secretkey的值为ABIEn1UJht),如下:

hlslevel=web&ptime=1500950616000&vids=7d26575efe9eef80bafa426ff6dd7dc4_7,7d26575efebc3f04e1632fee60d34972_7ABIEn1UJht

3、sign为40位大写的SHA1值

EAB0BDEAFF868D4573987DFAA9459AC1D98B45DD
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

删除单个视频的问答题目

接口URL

http://api.polyv.net/v2/video/{userId}/deleteExam

接口说明

删除单个视频的问答题目

支持格式

JSON

请求方式

POST,GET

请求数限制

TRUE

请求参数

参数名 必选 类型及范围 说明
userId true string 用户ID
ptime true string 当前13位毫秒级时间戳,3分钟内有效
vid true string 视频ID
sign true string 签名,40位大写的sha1值

JSON示例

正确返回

{
    code: 200,
    status: "success",
    message: "success",
    data: "删除成功."
}

错误返回

{
    code: 400,
    status: "error",
    message: "the sign is not right",
    data: ""
}

PHP示例代码

<?php
header("Content-type: text/html; charset=utf-8");
$userId="7d26575efe";
$ptime=time()*1000;//13位毫秒级时间戳
$vid="7d26575efe5902f5db2f9e5feea17bd7_7";
$secretkey="ABIEn1UJht";
$str="ptime=$ptime&vid=$vid".$secretkey;
$sign=strtoupper(sha1($str));
$url="api.polyv.net/v2/video/$userId/deleteExam?ptime=$ptime&vid=$vid&sign=$sign";
$ch=curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
$result=curl_exec($ch);
curl_close($ch);
echo $result;
?>

签名规则:

将非空的请求参数按照参数名字典顺序排列,连接参数名与参数值,并在尾部加上secretkey,生成40位大写SHA1值,作为sign。 以下是示例过程:

1、请求参数为

"ptime" = "1493188350000"
"vid" = "3828390191de2b3fd3467c36187aac08_3"

2、将请求参数按照参数名字典顺序排列

"ptime" = "1493188350000"
"vid" = "3828390191de2b3fd3467c36187aac08_3"

3、连接字符串
连接参数名与参数值,并在尾部加上secretkey(secretkey的值为tIQp4ATe9Z),如下:

ptime=1493188350000&vid=3828390191de2b3fd3467c36187aac08_3tIQp4ATe9Z

4、生成签名sign

4CE511177FD5A8A3E56EB31A20776C0DE157519A
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...