开发者学堂课程【微服务+全栈在线教育实战项目演练(SpringCloud Alibaba+SpringBoot):登录功能(接口问题解决)】学习笔记,与课程紧密连接,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/667/detail/11448
登录功能(接口问题解决)
在 service 下面创建子模块 service_ucenter
//登录
@GetMapping(" login")
public R loginUser(@RequestBody UcenterMember member)
//member对象封装手机号和密码
//调用service方法实现登录
//返回token值,使用jwt生成
String token = memberService. login(member);
return R.ok() .data("token", token) ;
错误提示:
org.springframework. http.converter.HittpIessageMotReadableException:Required request body is missing: publicicom.atguigu. commonutils.R com.atguigu.educenter.controller.UcenterlemberController.loginUser
,
提示提交方式写的不对,RequestBody 取值为空值,导致后面值也出现问题。
使用 Requestbody 时候需要 post 提交,如果 get 提交就会出现上面错误
运行结果提示缺少内容及参数,可以改成 @PostMapping 提交,重新启动。
进入 SwaggerUI 中刷新页面,在 member 一栏中填入手机号和密码,点击 try it out,查看返回结果,结果显示成功,
并且显示 token 字符串:eyJ0exAioiJKV1QiLcJhbGcioiJIU2I1NiJ9.
eyJzdwIioiJndwxpIXVzZXIiLCUpYxQiojE1ODM3MzY2NDESImV4cCI6MTU4MzgyMzAOMSwiawQioiIxMjM2NjE30TgzNDg5iTQyNzg2Iiwibmlja25hbwUioiLmtivor5UxMijMxIn0.
48okdo5bx9ss5o144pxu_ YJgTogElowxrw k20FoYAo
.
遇到问题要一步一步排查,目前大部分代码不是特别的复杂,问题不涉及业务问题,问题可能是提交方式不对、参数传错、取值不对等。
如果仔细检查完还没有检查出错误,可以考虑是否是代码没有编译(重新编译点击build 中的 rebuild proiect)。