获取融云token(用户唯一标识)


多读多写多记录,多学多练多思考。----------- Banana.Banuit Gang(香柚帮)


    /**
	 * 获取融云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 = json_decode($this->request_post_push($url, $postData),true);

		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 = 'xxxxxxxx';
		$appSecret = 'xxxxxxxxx';

		$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 ;
	}

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值