微服务Feign接口的参数不匹配

  • 首先在一个公共模块写了个feign的api
  •     /**
         * 根据手机号获取唯一用户
         * @param mobile
         * @return
         */
        @GetMapping("/user/feign/searchByMobile")
        R<User> searchByMobile(@RequestParam(value = "mobile",required = false) String mobile);

    在另一个项目引用

  • userBizApi.searchByMobile("111");

    调用时报错

  • 但是同样调用另一个feign的方法却正常

 

 

目前我自己根据报错推测的原因是因为我的

/user/feign/searchByMobile

方法传到feign里,实际调用的却是

    @GetMapping({"/user/feign/{id}"})
    R<User> getUser(@PathVariable("id") Long id) ;

后面我重写了另一个controller,却依然不能解决问题

根据已有的信息推断,你将@RequestParam(value = "mobile",required = false)去掉试一下。

    /**
     * 根据手机号获取唯一用户
     * @param mobile
     * @return
     */
    @GetMapping("/user/feign/searchByMobile")
    R<User> searchByMobile(String mobile);

 

参数一个是String,一个是long类型,数据类型不匹配啊

报错是指传入的参数类型,与方法需要的参数类型不匹配导致的,重点关注一下参数

您的问题已经有小伙伴解答了,请点击【采纳】按钮,采纳帮您提供解决思路的答案,给回答的人一些鼓励哦~~

ps:开通问答VIP,享受5次/月 有问必答服务,了解详情↓↓↓

【电脑端】戳>>>  https://vip.csdn.net/askvip?utm_source=1146287632
【APP 】  戳>>>  https://mall.csdn.net/item/52471?utm_source=1146287632