获取融云平台token

浏览:908 发布日期:2018/03/06 分类:用法示例
在thinkphp3.2中使用融云第三方平台,下面是获取融云平台的token。
/**
* 获取融云token
* 方法名:GetToken
* @param userId:司机 Id, userName:司机车牌号, portraitUri: 头像空值
* @return {"code":200, "userId":"jlk456j5", "token":"sfd9823ihufi"}
*/
function GetToken( $userId, $userName, $portraitUri = '')
{
// 请求url
$url = 'https://api.cn.rong.io/user/getToken.json';

$postData = 'userId='.$userId.'&name='.$userName.'&portraitUri='.$portraitUri;

// post提交-推送
$row = object_array(json_decode(request_post_push($url, $postData)));
if($row['code'] == '200' ){ // 返回码200 为正常
return $row['token'];
}else{
return '';
}
}

/**
* curl-提交推送
* @param url:请求地址, postData:请求参数
*/
function request_post_push($url = "", $postData = "") {

// 参数为空返回状态
if (empty($url) || empty($postData)) {
return false;
}

//参数初始化
$appKey = '';
$appSecret = '';

$nonce = mt_rand(); // 获取随机数。

$timeStamp = time();// 获取时间戳。

$signature = sha1($appSecret.$nonce.$timeStamp);

$httpHeader = array(

'App-Key:'.$appKey, // 平台分配

'Nonce:'.$nonce, // 随机数

'Timestamp:'.$timeStamp, // 时间戳

'Signature:'.$signature, // 签名

'Content-Type: application/x-www-form-urlencoded',

);

// 初始化curl
$ch = curl_init();
// 设置你需要抓取的URL
curl_setopt($ch, CURLOPT_URL, $url);
// post提交方式
curl_setopt($ch, CURLOPT_POST, 1);

curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);
// 设置cURL 参数,要求结果保存到字符串中还是输出到屏幕上。
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
// 设置header
curl_setopt($ch, CURLOPT_HEADER, false);
// 增加 HTTP Header(头)里的字段
curl_setopt($ch, CURLOPT_HTTPHEADER, $httpHeader);

curl_setopt($ch, CURLOPT_TIMEOUT, 30);
// 终止从服务端进行验证
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,false);
// 运行curl
$data = curl_exec($ch);
// 关闭URL请求
curl_close($ch);

return $data ;
}

最后一句: 技术无价,不喜勿喷。

评论( 相关
后面还有条评论,点击查看>>