怎么调用微信高级接口
后台服务器可以调用微信的接口与微信用户进行讯息的通信,这样的行为就是在调用微信的接口,这些接口是基础接口,你不需要任何付费行为或者身份认证行为就可以调用。但是有一些高级接口,你的微信公众号必须达到一定的权限如通过微信认证才能调用自定义菜单、微信支付等高级功能。
不过微信公众帐号的测试号系统可以应用这些高级接口(微信支付等涉及交易的接口除外)。
微信高级接口的调用
微信高级接口的调用需要先调用一个token_access接口,只有先调用这个接口才能调用其它高级接口。 如下:连通高级接口示意图
调用token_access需要用到appID和appsecreset(中已经讲述这两者的由来)
调用代码如下
curl_setopt($ch,CURLOPT_URL,$url);//与url建立对话
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,FALSE); //进行配置
curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,CURLOPT_RETURNTRANSFER,1);//进行配置
$output = curl_exec($ch);//执行对话,获取接口数据Access Token
curl_close($ch);//关闭会话
$jsoninfo = json_decode($output,true);//解码接口数据,将json格式字符串转换成php变量或数组。默认是变量,加true后是数组。
$access_token = $jsoninfo["access_token"];
?>
调用微信高级接口
1)、调用自定义菜单功能
<div class="jb51code">
<pre class="brush:php;">
//创建一个自定义菜单的json字符串
$jsonmenu = '{
"button":[
{
"name":"关于我们","sub_button":[
{
"type":"click","name":"公司简介","key":"公司简介"
},{
"type":"click","name":"社会责任","key":"社会责任"
},"name":"联系我们","key":"联系我们"
}]
},{
"name":"产品服务","name":"微信平台","key":"微信平台"
},"name":"微博应用","key":"微博应用"
},"name":"手机网站","key":"手机网站"
}]
},{
"name":"技术支持","name":"文档下载","key":"文档下载"
},"name":"技术社区","key":"技术社区"
},"name":"服务热线","key":"服务热线"
}]
}]
}';
$url = "https://api.weixin.qq.com/cgi-bin/menu/create?access_token=".$access_token;//接口地址
$result = https_request($url,$jsonmenu);//与接口建立会话
var_dump($result);
function https_request($url,$data = null){
$curl = curl_init();
curl_setopt($curl,$url);
curl_setopt($curl,FALSE);
curl_setopt($curl,FALSE);
if (!empty($data)){
curl_setopt($curl,CURLOPT_POST,1);
curl_setopt($curl,CURLOPT_POSTFIELDS,$data);
}
curl_setopt($curl,1);
$output = curl_exec($curl);
curl_close($curl);
return $output;
}
//把这段代码加入到上面的调用Access Token接口的代码中就可以实现在微信公众号界面添加菜单的功能。