微信公众平台推出一自定义菜单功能,我们可以简单的直接在后台编辑自定义菜单,也可以利用api来设置菜单,下面我来介绍一下操作方法
腾讯微信3月19日正式公布公众平台自定义菜单功能,目前该功能仅提供给企业和机构,且内测资格需要申请,对于这一新增功能,目前仅有少数账号已经开通,至此,微信的商业化价值被进一步挖掘出来。
开发者可利用该功能为公众账号的会话界面底部增加自定义菜单,用户点击菜单中的选项,可以调出相应的回复信息或网页链接。
菜单创建,接口说明,通过POST一个特定结构体,实现在微信客户端创建自定义菜单。
请求说明,http请求方式:POST
https://api.weixin.qq.com/cgi-bin/menu/create?access_token=ACCESS_TOKEN
结构体其实就是一个json格式的字符串,相信很多朋友就卡在这里了,怎么往这个接口地址 post 一个结构体呢,实现代码如下:
- public static void main(String[] args) throws Exception {
- URL url = new URL("https:
- /menu/create?access_token=TOKEN");
- String responeJsonStr = "{"+
- ""button":["+
- "{"name":"酒店预订","+
- ""sub_button":["+
- "{"+
- ""type":"click","+
- ""name":"附近酒店","+
- ""key":"jintoneinn488878-1""+
- "},"+
- "{"+
- ""type":"click","+
- ""name":"查找酒店","+
- ""key":"jintoneinn488878-2""+
- "}"+
- "]"+
- "}"
- "]"+
- "}";
- HttpURLConnection conn = (HttpURLConnection) url.openConnection();
- conn.setRequestMethod("POST");
- conn.setDoOutput(true);
- conn.connect();
- conn.getOutputStream().write(responeJsonStr.getBytes("utf-8"));
- InputStream is = conn.getInputStream();
- BufferedReader in = new BufferedReader(new InputStreamReader(is,"utf-8"));
- StringBuffer buffer = new StringBuffer();
- String line = "";
- while ((line = in.readLine()) != null) {
- buffer.append(line);
- }
- System.out.println(buffer.toString());
- }
菜单查询,接口说明,查询当前使用的自定义菜单结构.
请求说明,http请求方式:GET
https://api.weixin.qq.com/cgi-bin/menu/get?access_token=ACCESS_TOKEN
返回说明,对应创建接口,正确的Json返回结果,代码如下:
- {"menu":{"button":[{"type":"click","name":"今日歌曲","key":"V1001_TODAY_MUSIC","sub_button":[]},{"type":"click","name":"歌手简介","key":"V1001_TODAY_SINGER","sub_button":[]},{"name":"菜单","sub_button":[{"type":"click","name":"hello word","key":"V1001_HELLO_WORLD","sub_button":[]},{"type":"click","name":"赞一下我们","key":"V1001_GOOD","sub_button":[]}]}]}}
菜单删除,接口说明,取消当前使用的自定义菜单,请求说明
http请求方式:GET
https://api.weixin.qq.com/cgi-bin/menu/delete?access_token=ACCESS_TOKEN
返回说明,对应创建接口,正确的Json返回结果,代码如下:{"errcode":0,"errmsg":"ok"}
(责任编辑:admin) |