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错误、

相关推荐
RoyLin3 分钟前
TypeScript设计模式:仲裁者模式
前端·后端·typescript
子兮曰7 分钟前
🚀前端依赖配置避坑指南:深度解析package.json中devDependencies的常见误解
前端·javascript·npm
瑶琴AI前端8 分钟前
【零成本高效编程】VS Code必装的5款免费AI插件,开发效率飙升!
前端·ai编程·visual studio code
forever_Mamba9 分钟前
实现一个高性能倒计时:从踩坑到最佳实践
前端·javascript
_AaronWong10 分钟前
实现一个鼠标滚轮横向滚动需求
前端·electron
子兮曰10 分钟前
浏览器与 Node.js 全局变量体系详解:从 window 到 global 的核心差异
前端·javascript·node.js
Olrookie11 分钟前
ruoyi-vue(十五)——布局设置,导航栏,侧边栏,顶部栏
前端·vue.js·笔记
召摇12 分钟前
API 设计最佳实践 Javascript 篇
前端·javascript·vue.js
光影少年13 分钟前
vite打包优化有哪些
前端·vite·掘金·金石计划
码间舞13 分钟前
文件太大怎么上传?【分组分片上传大文件】-实战记录
前端·vue.js·程序员