微信公众号java开发思路

方法一:不开启开发模式,直接在自定义菜单中跳转到网页,适用于流量较小的公众号。 方法二:开启开发者模式,关闭自带的自定义菜单和消息回复,接入自己开发的应用 1、接入校验:创建servlet,在doGet()中进行校验,校验成功表示微信和当前应用接入成功 2、响应用户发送的消息:在servlet的doPost()中进行响应xml消息,xml消息有以下属性: FromUserName,ToUserName,MsgType,Content 其中MsgType又分event,text,voice,video,link,location,subscribe等等类型,系统需要先根据MsgType类型来进行响应 3、通过appId和secretId获取accessToken,用于调用微信的接口。token有效时间一般为2小时。 1)可以开启线程用thread.sleep(2000)来不断获取token放到静态字段里,要用的时候到静态字段里取即可 2)将token、过期时间保存到redis等数据库中,用的时候取出,然后判断是否过期,过期则重新获取。 3、创建自定义菜单 组装自定义菜单(json),通过post请求将自定义菜单连带accessToken发送到微信接口。菜单创建 交互图:

 

以下是acessToken设计伪代码:
class WxServlet extends HttpServlet{doGet(){//接入校验}doPost(){//响应消息}init(){WxUtil.createMenu();}
}class AcessToken{pivate String token;private String expires;//getter setter
}class WxUtil{void createMenu(){//获取acessToken
    getAcessToken();//组装菜单(json)发送post请求到微信服务器,创建成功
  }String getAcessToken(){//校验token是否过期,过期重新获取,否则用数据库中的数据AcessToken t= getAcessTokenFromDb();if(checkExpires(t.exprise))return t.token;elsereturn getAcessTokenFromWx().token;}AcessToken getAcessTokenFromDb(){}AcessToken getAcessTokenFromWx(){//通过微信接口请求acessToken,保存到数据库
    saveToken2Db(t);//返回token
  }void saveToken2Db(t){//将token保存到数据库或内存中
  }}

 

转载于:https://www.cnblogs.com/2333/p/6383358.html


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部