zoukankan      html  css  js  c++  java
  • 开发中遇到的问题---【feign的多参数问题】

    feign多参数问题

    1.GET方式

    错误写法

    @RequestMapping(value="/test", method=RequestMethod.GET)  
    Model test(final String name,  final int age);  

    启动服务的时候,会报如下异常:

    Caused by: java.lang.IllegalStateException: Method has too many Body parameters: public abstract com.chhliu.springboot.restful.vo.User com.chhliu.springboot.restful.feignclient.UserFeignClient.findByUsername(java.lang.String,java.lang.String) 

    异常原因:当使用Feign时,如果发送的是get请求,那么需要在请求参数前加上@RequestParam注解修饰,Controller里面可以不加该注解修饰。

    正确写法

    @RequestMapping(value="/test", method=RequestMethod.GET)  
    Model test(@RequestParam("name") final String name,@RequestParam("age")  final int age); 

    2.POST方式

    错误写法

    public int save(@RequestBody final Person p, @RequestBody final UserModel user);

    feign中你可以有多个@RequestParam,但只能有不超过一个@RequestBody。

    正确写法

    public int save(@RequestBody final Person p,@RequestParam("userId") String userId,@RequestParam("userTel") String userTel);
    愿你走出半生,归来仍是少年!
  • 相关阅读:
    JS跨域
    Cookie的Domain
    Mvc自定义分页控件
    SQLServer日期函数
    IIS里面网站停止了,不能启动
    JS面向对象
    我已下定决心,回郴州老家发展
    支持向量机
    无监督降维:主成分分析法
    机器学习概念--偏差方差、Pipeline及模型正则
  • 原文地址:https://www.cnblogs.com/hujunwei/p/11997035.html
Copyright © 2011-2022 走看看