解决ums调用notice的bug

在 springcloud案例联合测试(bug) 文末,遇到bug

原因

ums微服务的 FollowController

在ums微服务的FollowController中,关键代码如下:

@PostMapping(value="/follow")
public CommonResult follow(Notice notice){
    return restTemplate.postForObject(NOTICE_URL+"/sendNotice/",notice, CommonResult.class);
}

使用restTemplate作为web client向notice微服务发请求,此时 传递数据是json格式

notice微服务的 NoticeController

在notice微服务的NoticeController中,关键代码如下:

@PostMapping(value="/sendNotice")
public CommonResult sendNotice(Notice notice){

需要接受数据格式是post普通方式

解决

修改notice微服务的NoticeController,让sendNotice接受json数据格式,如下:

@PostMapping(value="/sendNotice")
public CommonResult sendNotice(@RequestBody Notice notice){

在形参前面加上@RequestBody

重新测试,成功保存数据


原文出处:/show_1EF5h7cPbJTE.html