微信小程序openid无法写入,导致每次登录都认为是新用户,并写入user一条新记录
- 技术交流
- 1598次浏览
io.jpress.service.provider.UserOpenidServiceProvider
@Override public UserOpenid findByUserIdAndType(Object userId, String type) { List<UserOpenid> userOpenids = findListByUserId(userId);//返回为空list,导致无法插入openid,微信小程序每次登陆都新增一条用户数据 return userOpenids == null ? null : userOpenids.stream().filter(userOpenid -> userOpenid.getType().equals(type)).findFirst().get(); }
findListByUserId(userId)返回一个空List,执行三元运算符后面的语句,报错。
修改如下:
@Override public UserOpenid findByUserIdAndType(Object userId, String type) { List<UserOpenid> userOpenids = findListByUserId(userId);//返回为空list,导致无法插入openid,微信小程序每次登陆都新增一条用户数据 return userOpenids == null || userOpenids.size() == 0 ? null : userOpenids.stream().filter(userOpenid -> userOpenid.getType().equals(type)).findFirst().get(); }
1个回答
已经修复。
海哥
回复