微信公众平台二次开发解决方案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
微信公众平台二次开发解决方案
篇一:微信公众平台二次开发手册
微信二次开发手册
1. 准备工作
1) 申请微信服务号,进行微信认证;
2) 成为开发者:申请成功后,从网页上登录微信公众平台,点击“开发者中心”,输入“接收微信平台转发消息的统一URL”和“TOKEN”提交成为开发者。(这两个参数后面还可以修改)
3) 获取AppId 和AppSecret :成为开发者后,在“开发者中心中”页面,可获取AppId和AppSecret两个参数。
2. 项目搭建及配置
创建一个web项目,还需将包添加到项目中。
下载地址:提取码:6eb1
包提供主要两个功能:
a) 微信转发请求处理器WeiXinServlet,主要做以下事件:
1接收微信转发的消息;
2对消息进行封装成对象WeiXinMessage;
3把消息对象WeiXinMessage转递给微信菜单处理器WeiXinProcessor进行业务逻辑处理,微信菜单处理器返回微信响应对象WeiXinPacket
4把微信响应对象WeiXinPacket解析成xml消息,并响应微信请求。
b) 微信接口统一调用类WeiXinInterface,目前提供以下功能:(后面会按需要增加) 1获取全局Access_Token 2创建微信菜单
3查询微信菜单
4删除微信菜单
在中配置用于接收微信消息的Servlet
WeiXinServlet
PROCESSOR_PACKAGE
WeiXinServlet
/weixin
参数说明:
1) PROCESSOR_PACKAGE:微信公众号功能菜单的处理器的Java包路径。
:
将准备工作中输入的TOKEN 和开发都中心页面获取到的AppId和 AppSecrets三个参数配置到properties中。
3. 微信菜单管理
微信菜单接口中要求第三方将自己的菜单数据以JSON 格式提交。
因此首先要在项目创建一个JSON格式的文件,把自定义菜单配置好。
按以下示例配置: { "button": [
{
"type": "click",
"name": "今日歌曲",
"key": "V1001_TODAY_MUSIC"
},
{
"type": "click",
"name": "歌手简介",
"key": "V1001_TODAY_SINGER"
},
{
"name": "菜单",
"sub_button": [
{
"type": "view",
"name": "搜索",
"url": "/"
},
{
"type": "view",
"name": "视频",
"url": "p> },
{
"type": "click",
"name": "赞一下我们",
"key": "V1001_GOOD"
}
]
}
]
}
说明:
button数组中存放的是一级菜单,最多存放三个一级菜单;
sub_button数组中存放的是二级菜单,最多存放的5
个二级菜单;
支持两种菜单类型
click:点击菜单将在微信中直接显示消息;
view:点击菜单将打开微信网页;
包中WeiXinInterface类提供微信菜单的创建,查询,删除接口。
1、创建实例:
WeiXinInterface weiXinInterface = new WeiXinInterface();
2、调用获取ACCESS_TOKEN接口(此TOKEN的有效时间为7200秒,也即两个小时)
WeiXinAccessToken weixinAccessToken = ("client_credential",_app_id(), _app_secret());
String accessToken = weixinAccessToken. getAccess_token();
参数说明:
第一个参数:固定值client_credential
第二个参数:配置文件中的AppId
第三个参数:配置文件中的AppSecrets
微信菜单创建:
3、调用菜单创建接口
(accessToken, menuJson);
参数说明:
第一个参数:第2步中获取到的ACCESS_TOKEN,如果时间超过2个小时,则需要重新进行第2步操作获取ACCESS_TOKEN
第二个参数:自定义的菜单JSON文件的字符串
返回值:true表示创建成功,否则创建失败,失败原因可通过日志查看。
微信菜单查询:
4、调用菜单查询接口
(accessToken);
参数说明:
第一个参数:第2步中获取到的ACCESS_TOKEN,如果时间超过2个小时,则需要重新进行第2步操作获取ACCESS_TOKEN
返回值:菜单的JSON格式字符串
微信菜单删除
5、调用菜单删除接口
(accessToken);
参数说明:
第一个参数:第2步中获取到的ACCESS_TOKEN,如果时间超过2个小时,则需要重新进行第2步操作获取ACCESS_TOKEN