<?php
/**
* 发送HTTP请求方法,目前只支持CURL发送请求
* @param string $appId
* @param string $secret
* @param string $code
* @return json 响应数据
*/
public function getSessionKey(){
if( input('get.appId') ){
$appId = input('get.appId');
}else{
return $this->autoJson('4000', 'appId不能为空');
}
if( input('get.secret') ){
$secret = input('get.secret');
}else{
return $this->autoJson('4000', 'secret不能为空');
}
if( input('get.code') ){
$code = input('get.code');
}else{
return $this->autoJson('4000', 'code不能为空');
}
$param = array('appid'=>$appId, 'secret'=>$secret,'js_code'=>$code,'grant_type'=>'authorization_code');
$url = 'https://api.weixin.qq.com/sns/jscode2session';
return $this->https_request($url, $param);
}
/**
* 发送HTTP请求方法,目前只支持CURL发送请求
* @param string $url 请求URL
* @param array $param GET参数数组
* @param array $data POST的数据,GET请求时该参数无效
* @param string $method 请求方法GET/POST
* @return array 响应数据
*/
function https_request($url, $param, $data = '', $method = 'GET')
{
$opts = array(
CURLOPT_TIMEOUT => 4,
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_SSL_VERIFYHOST => false,
);
/* 根据请求类型设置特定参数 */
if (!empty($param)) {
$opts[CURLOPT_URL] = $url . '?' . http_build_query($param);
} else {
$opts[CURLOPT_URL] = $url;
}
if (strtoupper($method) == 'POST') {
$opts[CURLOPT_POST] = 1;
$opts[CURLOPT_POSTFIELDS] = $data;
}
/* 初始化并执行curl请求 */
$ch = curl_init();
curl_setopt_array($ch, $opts);
$data = curl_exec($ch);
$error = curl_error($ch);
curl_close($ch);
//发生错误,抛出异常
if ($error) return false;
return $data;
}唯一凭证
获取微信唯一凭证
最新推荐文章于 2023-04-10 10:42:46 发布