微信公众号开发3—自定义菜单的使用

上一篇讲述了消息的交互过程,这一篇继续讲自定义菜单。

自定义菜单:自定义菜单的创建、删除、查询需要调用微信公众平台开放的自定义菜单接口,调用该接口需要获取access_token,且接口都基于https协议

https协议:http(超文本传输协议)和SSL/TLS的组合,用于提供加密通信以及对网络服务器身份的验证,常用于互联网的交易支付和企业系统中敏感信息传输

所以我们要解决在java程序中发送https请求的问题

客户端访问https链接时,有两种方式让JSSE信任HTTPS服务器端的安全证书:

1:将HTTPS服务器端的安全证书导入到客户端的TrustStore文件中(需手动导入服务器端证书,若服务器端证书经常变化,就会不方便)

2:实现自定义的信任管理器类(需要实现X509TrustManager接口并且要实现这个接口的三个方法),

1>checkClientTrusted()检查客户端证书,不信任则抛出异常

2>checkServerTrusted()检查服务器端证书,不信任则抛出异常,通过自己实现该方法,可以使之信任我们指定的任何证书

3>getAcceptedIssuers()返回受信任的X509证书数组

所以我们可以创建一个信任管理类,让它信任任何证书

接口访问凭证

1:获取凭证接口

2:获取凭证方式:手动获取,程序获取,本质都是向微信服务器发送HTTPS get请求

手动获取:将访问地址放到浏览器地址栏访问

程序获取:通过编程调用获取凭证接口(需要HttpURLConnection类),得到的是json字符串,用json开发工具包json-lib将json字符串转为java对象,我们通过json-lib的类JSONObject来实现

自定义菜单接口

菜单按钮分类:click(点击事件)和view(访问网页)

click类型的按钮有type,name,key

view类型的按钮有type,name,url

用java代码创建自定义菜单:创建包装类---创建菜单---菜单点击事件响应

总结:发送https请求---获取接口访问凭证(access_token)--- 封装菜单工具类 --- 创建、删除、查询自定义菜单--- 菜单点击事件




你可能感兴趣的:(微信开发)