NutzCN Logo
问答 WxHandler中事件处理的逻辑中的值如何带入其他方法中?
发布于 2720天前 作者 qq_d6d46f6d 1642 次浏览 复制 上一个帖子 下一个帖子
标签:

Wxhander中重写了一个方法,需要带一个filter中使用。
请问该如何做?

public WxOutMsg eventView(WxInMsg msg) {
        Wx_user usr = wxUserService.fetch(Cnd.where("openid", "=", msg.getFromUserName()));
        if(!Lang.isEmpty(usr))
        {
                HttpSession session = Mvcs.getHttpSession();
                session.setAttribute("wxUsr",usr);
        }
        return super.eventView(msg);
    }

或者其他业务controller如何获当前微信用户的openId?

5 回复
session.setAttribute("wxUsr",usr);
session.setAttribute("wxUsrId",msg.getFromUserName());

这样?? 话说, usr里面也有openid了吧??

wx_user中有。
关注了就插入了。
我想跟另外一个表的用户资料做关联,需要跳转一个页面手动绑定。
但我session这里创建了,filter中sessionid不对。

 public View match(ActionContext actionContext) {
        try{
            HttpSession session = Mvcs.getHttpSession();
            System.out.print("----------" + session.getId());
            Wx_user usr = (Wx_user) session.getAttribute("wxUsr");
            return new ServerRedirectView("/user/login");//跳转登录页
            }
            return null;//继续
        }catch(Exception e){
            e.printStackTrace();
            return null;
        }

    }

噢,你是接收被动消息,所以session并非用户发起的,跟用户访问页面时的session不是同一个

来自炫酷的 NutzCN

你需要用到js sdk了

来自炫酷的 NutzCN

添加回复
请先登陆
回到顶部