接口URL
http://api.polyv.net/v2/play/{userid}/player-list
接口说明
(接口调用有频率限制,详细请查看)
获取用户下的播放器列表。
返回结果支持格式
JSON
请求方式
GET
请求参数
参数名 | 必选 | 类型及范围 | 说明 |
---|---|---|---|
userid | true | string | 用户id,路径参数 |
ptime | true | string | 当前13位毫秒级时间戳,3分钟内有效 |
sign | true | string | 签名,40位大写的sha1值 |
返回结果
{
"code": 200,
"status": "success",
"message": "success",
"data": [
{
"playerName": "默认",
"playerId": "test1",
"date": "2018-11-15 17:15:29",
"isDefault": 1
},
{
"playerName": "player2",
"playerId": "test2",
"date": "2018-11-15 17:21:07",
"isDefault": 0
}
]
}
失败返回json
{
"code": 400,
"status": "error",
"message": "ptime is too old.",
"data": ""
}
字段描述
字段 | 说明 |
---|---|
playerName | 播放器名称 |
playerId | 播放器id |
date | 创建日期 |
isDefault | 是否是默认播放器,是:1, 否:0 |
响应说明
错误代码 | message | 说明 |
---|---|---|
400 | sign can not be empty. | 加密串为空 |
400 | ptime is too old. | 时间戳过期 |
400 | ptime is illegal. | 时间戳参数格式不对或者超过当前时间3分钟 |
400 | Could not find user by userid. | userid不存在 |
400 | the sign is not right. | 加密串不正确 |
PHP请求示例
<?php
header("Content-type: text/html; charset=utf-8");
$userid="用户id";
$ptime=time()*1000;//13位
$secretkey="填写secretkey";
$str="ptime=".$ptime.$secretkey;
$hash=strtoupper(sha1($str));
$url="https://api.polyv.net/v2/play/$userid/player-list?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 = "1492591990000"
2、将请求参数按照参数名字典顺序排列
ptime = "1492591990000"
3、连接字符串
连接参数名与参数值,并在尾部加上secretkey(secretkey的值为tIQp4ATe9Z),如下:
ptime=1492591990000tIQp4ATe9Z
4、生成签名sign
C2F695EC11A40C5504A883CEB692CA16F80FC2C1