java入门,记一次微服务间feigin请求的问题

一、前言

记录工作中遇到的开发问题,而不是写博客凑字数。

二、微服务调用

1、通过本服务调用另外一个服务,需要定义一个接口,并用@FeignClient 注解进行注解

value = "服务名" 要调用的服务名

服务得到路径,对应的是controller的请求路径。

/tmpUser/updateUserNickName

java 复制代码
@FeignClient(value = "服务名")
public interface BlockChainClient {
	
	@PostMapping("/tmpUser/updateUserNickName")
	ResponseData<String> updateUserNickName(@RequestBody Map<String, Object> params);
}

需要调用的服务的controller

java 复制代码
@Slf4j
@RestController
@RequestMapping("tmpUser")
public class UserTmpController {
	
	
	   @Autowired
	    private UserService userService;
	    
		@ApiOperation(value = "更新用户昵称", notes = "更新用户昵称")
	    @PostMapping("updateUserNickName")
	    public ResponseData<String> updateUserNickName(@RequestBody Map<String, Object> param) {
	        try {
	        	String phone = "";
	        	String nickName="";
	        	if(param.containsKey("phone")) {
	        		phone = param.get("phone").toString();
	        		
	        	}
	        	
	        	if(param.containsKey("nickName")) {
	        		nickName = param.get("nickName").toString();
	        		
	        	}
	        	if(!StringUtils.isEmpty(phone) && !StringUtils.isEmpty(nickName)) {
	        		 
	        		 userService.updateUserNickName(phone, nickName);
	        	}
				 
				return ResponseData.success();
			} catch (Exception e) {
				e.printStackTrace();
			}
	        return ResponseData.error();
	    }

}

2.遇到的问题:

定义的接口传的参数类型需要和接口的参数类型一致,包括注解,否则报400错误。

比如接口是:@RequestBody 而 服务的controller是@RequestParam 就会包400错误、

相关推荐
jay神35 分钟前
【计算机毕业设计】基于Flask+Vue的电影数据可视化与智能推荐系统
前端·vue.js·python·信息可视化·flask·毕业设计·课程设计
FreeTinker7 小时前
HTML本地存储技术解析:localStorage与sessionStorage的原理、差异与应用场景
前端·html
qq_452396237 小时前
第十二篇:《全链路监控与可观测性:前端错误追踪与性能分析》
前端
2601_962218477 小时前
万象生鲜系统区块链溯源技术帮助生鲜企业搭建食品安全数字化体系
大数据·运维·微服务·云原生·架构
EXI-小洲8 小时前
Java 操作 Word:字符串替换、图片插入、动态生成表格与API接口下载
java·开发语言·spring boot·word
wangruofeng8 小时前
Phosphor Icons 官网源码拆解:URL 即存储、水波动画与 7362 Star 图标库的架构实践
前端·架构·github
BigTopOne8 小时前
WebRTC Native / Android 开发学习资源整理
前端
2601_961901709 小时前
SpringBoot使用Nacos进行application.yml配置管理
java·spring boot·spring
excel9 小时前
nuxt 3 升级 nuxt 4 报错之 hasInjectionContext
前端
何以解忧,唯有..9 小时前
LangChain 工具调用(Tool Calling)实战指南
java·前端·langchain