批量获取答题日志

接口URL

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

接口说明

根据指定vid和时间区间查询该时间区域内对应视频下的问答日志,默认每页显示20条记录

支持格式

JSON

请求方式

GET

请求数限制

TRUE

请求参数

参数名 必选 类型及范围 说明
userid true string POLYV用户ID
ptime true string 当前时间的毫秒级时间戳(13位),3分钟内有效
sign true string 签名,为40位大写的SHA1值
vids true string 对应视频的vid,如果是多个视频,将每个vid用英文逗号隔开
pageNum false string 当前页数,默认为1
start false string 查询的开始日期,格式 YYYY-MM-DD
end false string 查询的结束日期,格式 YYYY-MM-DD

签名规则

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

1、请求参数为

"vids" = "vid1,vid2"
"start" = "2012-02-03"
"end" = "2012-09-05"
"pageNum" = "1"
"ptime" = "1493370776000"

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

"end" = "2012-09-05"
"pageNum" = "1"
"ptime" = "1493370776000"
"start" = "2012-02-03"
"vids" = "vid1,vid2"

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

end=2012-09-05&pageNum=1&ptime=1522809252890&start=2012-02-03&vids=vid1,vid23OmoLbTlHu

4、生成签名sign

C6B9BBCF53DCD14F503795A952DCC0ECAFC1AACA

返回正确结果JSON示例

{
  "code": 200,
  "status": "success",
  "message": "success",
  "data": [
    {data: [
        {
        logid: 27595105,
        examId: "161d7dda0e4",
        userid: "8205ac89d3",
        videoPoolId: "8205ac89d31c8c74e462548a2edd7dff_8",
        question: "test(2)",
        answer: "["1"]",
        isCorrect: 0,
        playId: "1519745038760X1487381",
        ipAddress: "61.144.145.7",
        province: "广东省",
        isp: "电信",
        operatingSystem: "Windows 7",
        browser: "Chrome",
        dateAdded: 1519745103000
        }
    ]

返回错误结果JSON示例

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

字段说明

字段 说明
code 返回码
status 返回状态
message 返回信息
data 分类下的视频大小
logid 此条日志的ID
examId 日志所属的问答的ID
userId 用户ID
videoPoolId 问答所属的视频ID
question 问答标题
answer 问答的正确答案
isCorrect 是否回答正确
playerId 播放器ID
ipAddress IP地址
province 省份
isp ISP运营商
operatingSystem 操作系统
browser 浏览器
dateAdded 回答该问题的日期(时间戳形式)

php请求示例

<?php
$userid="efbb4ae8ac";
$vids="8205ac89d31c8c74e462548a2edd7dff_8";//查询月份,格式为yyyyMM
$ptime = time()*1000;
$pageNum=1;
$start="2012-02-01";
$end="2013-03-01";
$secrectKey = "hbjCVBhnth";
$sign=strtoupper(sha1("end=$end&pageNum=$pageNum&ptime=$ptime&start=$start&vids=$vids".$secrectKey));
$url="http://api.polyv.net/v2/video/$userid/video-exam-log?end=$end&ptime=$ptime&sign=$sign&pageNum=$pageNum&start=$start&vids=$vids";
$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 请先选择目标视频. vids为空
400 sign can not be empty. 加密串为空
400 ptime is too old. 时间戳过期(3分钟过期)
400 the sign is not right. 加密串错误
400 日期格式错误. start或end格式错误
500 查询出错. 后台发生错误异常
200 success 查询成功
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...