微信前好久就已经退出了自定义菜单的创建,并且这次不想以前一样还需要申请,一申请就需要好几天,这次只需要将你的微信公众平台申请成为服务号即可,既然说到这,那我我也顺便说说
,服务号和订阅号到底有什么区别,服务号就是为大众说服务的,而订阅好着重为大众提供咨询,于是官方为了体现这两者的不同,就给了服务号自定义菜单的权利,而给了订阅号,每天一条
主动推送的权利(服务号每月一条)。
好了,不废话了,今天主要教大家怎样去实现微信的自定义菜单,先大概介绍一下真个流程,首先我们通过申请服务号时得到的appid和appsecret来申请到ACCESS_TOKEN,然后通过
ACCESS_TOKEN创建自定义菜单。
一。ACCESS_TOKEN,这个玩意是创建自定义菜单的核心
1.ACCESS_TOKEN是什么,是对应于公众号是全局唯一的票据,说白了,他是你访问微信服务器的临时凭据,证明你是一个服务号开发者。
2.怎样得到ACCESS_TOKEN?填写URL和TOKEN下面的地方的有appid和appsecret。注意:(这两个东西,必须在申请为服务号过后才可以得到),在你的程序里,需要通过get方式获取
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
链接,里边的appid和appsecret是你自己申请服务号时得到的。结果会返回
{"access_token":"ACCESS_TOKEN","expires_in":7200}
具体代码如下:
StringBuffer bufferRes = new StringBuffer(); try { //这里填入你的appid和appsecret URL realUrl = new URL("https://api.weixin.qq.com/cgi-bin/token?grant_"+ "type=client_credential&appid=?&secret=?"); HttpURLConnection conn = (HttpURLConnection) realUrl.openConnection(); // 读取超时 --服务器响应比较慢,增大时间,这个一般不会出现,不过写一写会比较好 conn.setReadTimeout(25000); HttpURLConnection.setFollowRedirects(true); // 设置请求方式 conn.setRequestMethod("GET"); conn.setDoOutput(true); conn.setDoInput(true); //进行连接 conn.connect(); //获取并封装读入流 InputStream in = conn.getInputStream(); BufferedReader read = new BufferedReader(new InputStreamReader(in,"UTF-8")); String returnString = null; //读出返回码 while ((returnString =read.readLine())!=null){ bufferRes.append(returnString ); } String a = bufferRes.toString(); //从返回码中,获取到 Config.ACCESS_TOKEN = a.substring(17, a.length()-20); in.close(); if (conn != null) { // 关闭连接 conn.disconnect(); } } catch (Exception e) { e.printStackTrace(); }
如上述代码所示,我们就获取到了ACCESS_TOKEN,不过官方给出的说明是,这个ACCESS_TOKEN会在2小时后失效。返回格式里边的ACCESS_TOKEN就是我们所需要的了,所以我们直接截取从17至
倒数20(不信你就去数一数)。特别注意:TOKEN和ACCESS_TOKEN是不同的两个东西,因为我在这上面犯过二,所以特别提醒一下,哈哈。
二。设置菜单
获取菜单ACCESS_TOKEN后,你可以干关于菜单的很多事情,你可以设置菜单,删除菜单,以及查询正在使用的菜单,相关的说明在“http://mp.weixin.qq.com/wiki/index.php?
title=自定义菜单接口”中有具体的说明。你们可以参详一下,我这里主要讲述一下关于创建的代码。具体代码如下:
StringBuffer bufferRes = new StringBuffer(); try { //这个URL是微信规定的格式,没什么好说的,其中的accessToken就是上面所讲到的获取到的ACCESS_TOKEN URL realUrl = new URL("https://api.weixin.qq.com/cgi-bin/menu/create?access_token="+ accessToken); HttpURLConnection conn = (HttpURLConnection) realUrl.openConnection(); // 连接超时 conn.setConnectTimeout(25000); // 读取超时 --服务器响应比较慢,增大时间 conn.setReadTimeout(25000); Htt设置pURLConnection.setFollowRedirects(true); // 设置请求方式,这里一定要是POST,原因去官网看去 conn.setRequestMethod("POST"); conn.setDoOutput(true); conn.setDoInput(true); conn.connect(); // 获取URLConnection对象对应的输出流 OutputStreamWriter out = new OutputStreamWriter(conn.getOutputStream()); // 发送请求参数 out.write(); out.flush(); out.close(); InputStream in = conn.getInputStream(); BufferedReader read = new BufferedReader(new InputStreamReader(in,"UTF-8")); String returnString= null; while ((returnString=read.readLine())!=null){ bufferRes.append(returnString); } System.out.println(bufferRes.toString()); in.close(); if (conn != null) { // 关闭连接 conn.disconnect(); } } catch (Exception e) { e.printStackTrace(); }
需要注意的是,其中的params就是自定义菜单的具体格式,并且这次的请求方式是POST,而不是GET,这次返回码只是告诉你菜单是否设置成功,不会告诉你错在哪里,如果你的返回码说你错了,那多数是因为你给的自定义菜单的格式有错误,关于自定义菜单的格式,我不得不承认确实看起来很复杂,还是自己多研究研究比较好,我这有一份模板,对照着看看,官网上有模板,自己多研究研究,这个真没什么好说的,
OK,祝各位好运,我的Q:987706386
相关推荐
java实现微公众平台自定义菜单.doc
主要介绍了java实现微信公众平台自定义菜单的创建示例,需要的朋友可以参考下
微信公众平台,开发者模式下的Java实现。实现菜单,自动回复,关注事件等!利用SpringMVC框架实现。如有疑问,可以关注我的博客~
整理高手们的博客代码 转自:... 希望对于初学者有所帮助,少走弯路, jar包和源代码都有, 下次我准备根据php开发整理出java版的开发实用的天气, 地图, 公交等接口代码开发。 敬请期待。
目前手机微信比较火热,在微信公众平台开发模式中,微信公众账号服务号创建自定义菜单需要自己编写json然后自己建立https请求去创建自定义菜单!这里提供了一个做好的成品以及源码(java版本的)!免费提供给大家...
整合了微信公众平台自动回复以及自定义菜单的使用,代码内容都是从书本中来的,结构清晰,希望能对微信公众平台开发者有一定的帮助!如有错误,欢迎指出,谢谢!
微信公众号的自定义菜单是微信开发基础课程之一,不论是订阅号还是服务号都必须学会和精通自定义菜单
本教程将深入探讨如何在Android项目中实现微信式的底部菜单栏和顶部菜单栏,提供良好的导航功能和用户体验。 首先,底部菜单栏是Android应用中常见的组件,它通常包含3到5个图标,每个图标对应一个主要的功能模块。...
微信公众平台技术文档:客服消息 一、接口说明 当用户和公众号产生特定动作的交互时(具体动作列表请见下方说明),微信将会把消息数据推送给开发者,开发者可以在一段时间内(目前修改为48小时)调用客服接口,通过...
主要为大家详细介绍了Java微信公众平台开发第十步,微信自定义菜单的创建实现,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本例为Java开发的微信公众平台的实例代码。 实现了自定义菜单,输入某个关键字自动回复图文信息。 模拟了输入员工姓名+工号,自动返回员工信息等 本实例为验证过的实例,可在服务器上运行。
JAVA微商城平台系统源码带数据库2、微信参数: 在系统后台公众平台填写参数及自定义菜单 。自定义菜单修改后需要点击右上方将微信菜单更新到微信服务器
这是我整合了liufeng的代码,包括所需jar包,自定义工具类等。内容包括验证Url有效性,处理微信服务器发来的消息,向普通用户传送信息,自定义菜单等
5. **消息处理**:掌握接收和响应用户消息的流程,包括文本、图片、语音、视频等多种消息类型,以及自定义菜单的点击事件处理。 6. **微信JSSDK**:了解JavaScript SDK的使用,实现微信内的网页分享、地理位置获取...
11. 自定义菜单——扫码推事件、相片选择器和地理位置选择器 41:55 12. 客服接口 20:49 15. 模板消息 32:34 16. 用户分组管理 41:17 17. 获取用户信息 27:00 19. 网页授权获取用户基本信息 59:40 20. UnionID机制 9:...
基础接口、自定义菜单、高级接口都有封装和实现。大家可下载供参考。目前实现的功能有智能聊天、翻译、音乐点播、人脸识别、号码归属地查询、历史上的今天、经典小游戏、笑话、天气预报、热门影片查询、周边搜索、猜...
weixin-common 微信报文消息与java应用程序之间的转换包,目前主要实现公众平台基础接口、消息收发、用户管理、自定义菜单管理的功能
整理了柳峰老师的微信平台开发的案例,其中包括用Java语言搭建微信平台, 自定义菜单,及图文回复,聊天机器人等经典案例的源代码,为刚刚接触微信平台的Java开发者提供一点点的思路。还有相关的jar
微信服务号是一个为企业和组织提供更强大的业务服务与用户管理能力的公众平台,它允许开发者通过API接口实现各种功能,例如自定义菜单、消息推送、用户管理等。本教程将深入探讨如何利用Java实现这些功能。 首先,...