问题描述:
有旧版本服务A和新版本服务B,两个服务的功能一致
旧的网关G,新的网关C,资源服务D。
由于历史遗留问题,服务A需要请求旧网关G上的controller并由G提供一些计算服务,在新版本的网关中我将这些服务抽取出来让网关只做路由功能,由于向下兼容的需要,我将网关C加入controller并使用feign直接转发到服务D,同时对这些历史遗留的接口用AOP进行单独管理。
在联调测试中发现一个问题:
服务A与B的逻辑完全一致,使用如下的restTemplate进行访问:
public User getUser(String token){
System.out.println("开始请求获取用户");
User user = template.getForEntity(
"http://web-gateway/token/getUser?token={1}",
User.class,
token).getBody();
return user;
}
服务C
@RequestMapping("/getUser")
public User getUser(@RequestParam(name = "token") String token, HttpServletRequest request) {
log.info("token info :{}", token);
User user = null;
try {
Enumeration<String> accept = request.getHeaders("accept")