根據題目ID取得使用者答題記錄的分頁結果
更新時間:2022-09-02 18:08:07
介面URL
http://api.polyv.net/live/v2/channels/{channelId}/get-question-record
介面說明
1、作用:取得直播答題的使用者答題記錄的分頁結果。
2、介面支援https協定
3、介面URL中的{channelId}為頻道ID
支援格式
JSON
請求方式
GET
請求數限制
TRUE
請求參數
| 參數名 | 必選 | 類型 | 說明 |
|---|---|---|---|
| appId | 是 | string | 從API設定中取得,在直播系統登記的appId |
| timestamp | 是 | string | 目前13位毫秒級時間戳,3分鐘內有效 |
| page | 是 | string | 頁數 |
| pageSize | 否 | string | 每頁顯示的資料筆數,預設每頁顯示1000筆資料 |
| questionId | 是 | string | 要查詢的題目ID |
| sign | 是 | String | 簽名,為32位大寫的MD5值,產生簽名的appSecret金鑰作為通訊資料安全的關鍵資訊,嚴禁儲存在用戶端直接使用,所有API都必須透過客戶自己伺服器中轉呼叫POLYV伺服器取得回應資料【詳見簽名產生規則】 |
回應成功JSON範例:
{
"code": 200,
"status": "success",
"message": "",
"data": {
"pageNumber": 1,
"totalItems": 1,
"contents": [
{
"recordId": "ezik85p9kw",
"channelId": 10001,
"questionId": "1c6dc3c666",
"viewerId": "oooii099",
"viewerName": "哈哈哈哈",
"answer": "a",
"createdTime": 1522032824000,
"lastModified": 1522032824000
}
],
"endRow": 1,
"lastPage": true,
"totalPages": 1,
"firstPage": true,
"startRow": 1,
"nextPageNumber": 1,
"prePageNumber": 1,
"offset": 0,
"limit": 1
}
}
回應失敗JSON範例:
未輸入appId
{
"code": 400,
"status": "error",
"message": "appId is required.",
"data": ""
}
appId不正確
{
"code": 400,
"status": "error",
"message": "application not found.",
"data": ""
}
時間戳錯誤
{
"code": 400,
"status": "error",
"message": "invalid timestamp.",
"data": ""
}
簽名錯誤
{
"code": 403,
"status": "error",
"message": "invalid signature.",
"data": ""
}
未輸入currentDay
{
"code": 400,
"status": "error",
"message": "currentDay is empty.",
"data": ""
}
頻道不存在
{
"code": 400,
"status": "error",
"message": "channel not found.",
"data": ""
}
非法的頻道ID
{
"code": 403,
"status": "error",
"message": "invalid channelId.",
"data": ""
}
欄位說明
| 參數名 | 說明 |
|---|---|
| code | 回應的狀態碼,例如:200 |
| status | 回應狀態 |
| message | 異常錯誤資訊 |
| data | 回應結果集 |
| pageNumber | 目前的頁數 |
| totalItems | 總筆數 |
| contents | 查詢的結果列表 |
| recordId | 答題記錄的ID |
| channelId | 頻道號 |
| questionId | 題目ID |
| viewerId | 答題使用者的使用者ID |
| viewerName | 答題使用者的暱稱 |
| answer | 提交的選項 |
| createdTime | 建立日期 (13位時間戳) |
| lastModified | 更新日期 (13位時間戳) |
| firstPage | 是否為第一頁,值為:true/false |
| lastPage | 是否為最後一頁,值為:true/false |
| nextPageNumber | 下一頁編號 |
| prePageNumber | 上一頁編號 |
| totalPages | 總頁數 |
| startRow | 目前頁第一個記錄所在的位置 |
| endRow | 目前頁最後一個記錄的位置 |
| limit | 目前頁記錄個數 |
php請求範例
<?php
//引用config.php
include 'config.php';
//接口需要的参数(非sign)赋值
$channelId = "124545";
$questionId = "1c6dc3c666";
$page = "1"; //页数
$pageSize="10";//每页显示的数据
$params = array(
'appId'=>$appId,
'questionId'=>$questionId,
'page'=>$page,
'pageSize'=>$pageSize,
'timestamp'=>$timestamp
);
//生成sign
$sign = getSign($params); //详细查看config.php文件的getSign方法
//接口请求url
$url = "http://api.polyv.net/live/v2/channels/$channelId/set-question-record?appId=$appId&questionId=$questionId&page=$page&pageSize=$pageSize×tamp=$timestamp&sign=$sign";
//输出接口请求结果
echo file_get_contents($url);
?>
