根据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...