名著阅读 > 微信公众平台开发:从零基础到ThinkPHP5高性能框架实践 > 5.2.5 查询菜单 >

5.2.5 查询菜单

使用接口创建自定义菜单后,开发者还可使用接口查询自定义菜单的结构。

查询菜单的接口如下。


https:// api.weixin.qq.com/cgi-bin/menu/get?access_token=ACCESS_TOKEN
  

查询自定义菜单的代码实现如下。


$url = "https:// api.weixin.qq.com/cgi-bin/menu/get?access_token=".$access_token;
$result = https_request($url);
var_dump($result);

function https_request($url, $data = null)
{
    $curl = curl_init;
    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
    if (!empty($data)){
        curl_setopt($curl, CURLOPT_POST, 1);
        curl_setopt($curl, CURLOPT_POSTFIELDS, $data);
    }
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    $output = curl_exec($curl);
    curl_close($curl);
    return $output;
}
  

正确时返回的JSON数据包如下。


{"menu":{"button":[{"name":"扫码","sub_button":[{"type":"scancode_waitmsg","name":
    "扫码带提示
","key":"rselfmenu_0_0","sub_button":},{"type":"scancode_push","name":"扫码推事件
","key":"rselfmenu_0_1","sub_button":}]},{"name":"发图
","sub_button":[{"type":"pic_sysphoto","name":"系统拍照发图
","key":"rselfmenu_1_0","sub_button":},{"type":"pic_photo_or_album","name":"拍照或者相册发图
","key":"rselfmenu_1_1","sub_button":},{"type":"pic_weixin","name":"微信相册发图
","key":"rselfmenu_1_2","sub_button":}]},{"name":"其他
","sub_button":[{"type":"location_select","name":"发送位置
","key":"rselfmenu_2_0","sub_button":},{"type":"click","name":"今日歌曲
","key":"V1001_TODAY_MUSIC","sub_button":},{"type":"view","name":"搜索
","url":"http:// www.soso.com/","sub_button":}]}]}}