大华官方有提供API, 通过APPID和APPSECRET获取Token;
[PHP]
//签名规则
function getPayloadArray(){
global $AppId, $appSecret;
$time = time();
$nonce = uniqid();
$result = array(
'system' => array(
'ver' => '1.0',
'appId' => $AppId,
'sign' => md5("time:{$time},nonce:{$nonce},appSecret:{$appSecret}"),
'time' => $time,
'nonce' => $nonce
),
'id' => '98a7a257-c4e4-4db3-a2d3-d97a3836b87c',
'params'=> array()
);
return $result;
}
//获取Token
function getToken(){
$url = 'https://openapi.lechange.cn/openapi/accessToken';
$payloadArray = getPayloadArray();
$payloadJson = arrayToJson($payloadArray);
$res = cURL($url, $method = 'POST', $header = [], $payloadJson);
$resArr = jsonToArray($res);
if($resArr['result']['code'] == '0'){
$accessToken = jsonToArray($res)['result']['data']['accessToken'];
$expireTime = jsonToArray($res)['result']['data']['expireTime'];
writeCookie($cookieName = 'accessToken', $cookieValue = $accessToken, $expireTime);
return $accessToken;
}
return $res;
}
//获取直播列表
function liveUrl($accessToken){
$url = 'https://openapi.lechange.cn/openapi/liveList';
$payloadArray = getPayloadArray();
$payloadArray['params'] = array(
'token' => $accessToken,
'queryRange' => '1-50'
);
$payloadJson = arrayToJson($payloadArray);
$res = cURL($url, $method = 'POST', $header = [], $payloadJson);
$resArr = jsonToArray($res);
if($resArr['result']['code'] == '0'){
return arrayToJson($resArr['result']['data']['lives']);
}
return $res;
}
|