请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

登录的时候消息发送异常,后台报错

好像是类型不匹配
图片描述
UserController中的login方法
int id = userService.login(form.getCode());
传入的是整型
public Integer login(String code) {
String openId = getOpenId(code);
Integer id = userDao.searchIdByOpenId(openId);
if (id == null) {
throw new EmosException(“账户不存在”);
}
// 从消息队列中接收消息,转移到消息表
messageTask.receiveAsync(id + “”);

    return id;
}

但是在MessageTask中的 receiveAsync是需要字符型 ,是不是需要转换一下喃
public int receiveAsync(String topic) {
return receive(topic);
}

正在回答 回答被采纳积分+3

1回答

神思者 2023-08-04 15:13:15

你给后端的登陆方法设置断点,看一下解析出来的id是什么。如果令牌有问题,解析出来的id就不对,你debug看一下

0 回复 有任何疑惑可以回复我~
  • 提问者 视线模糊 #1
    老师,视频讲解中,先执行注册流程,然后执行登录流程,调试过程中是不是IDEA不能重启,要一直运行?只能重启小程序前端
    回复 有任何疑惑可以回复我~ 2023-08-05 16:58:53
  • 神思者 回复 提问者 视线模糊 #2
    没明白你说的重启指的是什么?调试程序移动端和后端都要运行起来,没必要重启什么东西
    回复 有任何疑惑可以回复我~ 2023-08-05 23:58:45
  • 提问者 视线模糊 回复 神思者 #3
    注册流程调试完毕后小程序端进入的是“index”那个页面,如果此时点击IDEA的debug,后台重新运行,是不是消息就会消失?然后小程序端再重新运行到登录界面(我是点击的HBuilder X的控制台重新运行那个按钮),再登录就接收不到消息了,报的还是消息类型不匹配Null return value from advice does not match primitive return type,要正确接收到消息,是不是注册流程调试完后,IDEA不能点击debug,直接重新运行小程序端就可以了
    回复 有任何疑惑可以回复我~ 2023-08-07 06:55:34
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号