springCloud feign @RequestMapping @GetMapping 注意点


@Controller内的返回值是和配置的视图解析器InternalResourceViewResolver挂钩的;

我们使用feign是为了获去数据并不需要什么视图,所以一定不要忘记在方法上加@ResponseBody注解

  

示例:

@FeignClient(
        name = "card",
        url = "http://localhost:7913",
)
@RequestMapping(value = "/v1/card")
public interface CardFeignClient {
 
    @RequestMapping(value = "/balance", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE)
    Info info();
 
}  

  

如果 @RequestMapping注解被用在FeignClient类上,当像如下代码请求/v1/card/balance时,注意有Accept header

 

1
2
3
4
Content-Type:application/json
Accept:application/json
 
POST http: //localhost:7913/v1/card/balance

那么会返回 404。

如果不包含Accept header时请求,则是OK:

 

 
 
public  interface  CardFeignClient {
 
   @RequestMapping(value =  "/v1/card/balance" , method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE)
   Info info();
 
}




免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM