feign传递参数的三种方式
需要注意的一点是,feign好像是无法传递list集合类型的,但是你可以通过传递对象类型,然后在接收方再次将对象装在集合中达到集合传递的效果
传递方式一:传递的都是基本数据类型
restful风格参数,用@PathVariable写着走就行了
传递方式二:传递数组类型的参数
不使用restful风格,直接用@RequestParam声明参数之间的对应关系。
传递方式三:传递带有对象的参数
1.使用restful风格的参数要用@Pathvarible声明参数对应关系,@Pathvariable用于非字符串参数。
2.不适用restful风格的字符串参数用@Requestparam,
3.对象必须用@RequestBody注解声明
特别小知识:
默认情况下,Feign会将标有@RequestParam注解的参数转换成字符串添加到URL中,将没有注解的参数通过Jackson转换成json放到请求体中。注意,如果在@RequetMapping中的method将请求方式指定为POST,那么所有未标注解的参数将会被忽略