点击自定义菜单中二级菜单时怎么获取微信用户的信息
发布网友
发布时间:2022-04-25 03:37
我来回答
共1个回答
热心网友
时间:2022-04-26 17:14
用户在第一次关注你的公众号时,通过 inMsg.getFromUserName() 得到用户的 openId,并以此为 id 将该用户的信息存放到数据库表里面,这张表就相当于这个公从号的注册用户。
通过上面的 openId,实现一个自动登录的功能,用户的 id 就是 openId,用户在登录以后,就可以随时通过 openId 调用 UserApi.getUserInfo(openId) 得到用户信息了。
MyMsgController extends MsgController {
@Before(MsgInterceptor.class)
public void index() {
autoLogin();
super.index();
}
private autoLogin() {
if (getSessionAttr("openId") == null) {
InMsg inMsg = getInMsg();
setSessionAttr("openId", inMsg.getFromUser());
}
}
// 这里写其它覆盖方法
......
}
注意 index 方法上一定要有 @Before(MsgInterceptor.class), 方法中一定要 super.index() 调用一次 。