您的当前位置:首页关于openfeign的参数传递

关于openfeign的参数传递

来源:乌哈旅游
关于openfeign的参数传递

openfeign接⼝代码⽰例:

@FeignClient(name=\"调⽤的服务名称\public interface FeignTest{ /**

* 参数为空时 * @return */

@RequestMapping(\"demo1\") String demo1();

/**

* 当参数在url路径上时 * @param id * @return */

@RequestMapping(\"demo2/{id}\")

String demo2(@PathVariable(\"id\") int id);

/**

* 当传递普通参数时 * @param name * @return */

@RequestMapping(\"demo3\")

String demo3(@RequestParam(\"name\") String name, @RequestParam(\"age\") int age); /**

* 当传递复杂对象参数时 * @param userinfo * @return */

@RequestMapping(\"demo4\")

String demo4(@RequestBody Userinfo userinfo); /**

* 当参数放请求头中时 * @param source * @return */

@RequestMapping(\"demo5\")

String demo5(@RequestHeader(\"source\") String source);}

对应服务端代码如下:

@RestController

@RequestMapping(\"demo\")public TestController{

@RequestMapping(\"demo1\") public String demo1() {

System.out.println(\"public String demo1() method run!\"); return \"success demo1!\"; }

@RequestMapping(\"demo2\")

public String demo2(@PathVariable(\"id\") int id) {

System.out.println(\"public String demo2() method run!\"); System.out.println(\"id = \" + id); return \"success demo2!\"; }

@RequestMapping(\"demo3\")

public String demo3(@RequestParam(\"name\") String name, @RequestParam(\"age\") int age) { System.out.println(\"public String demo3() method run!\"); System.out.println(\"name = \" + name + \ return \"success demo3!\"; }

@RequestMapping(\"demo4\")

public String demo4(@RequestBody Userinfo userinfo) { System.out.println(\"public String demo4() method run!\"); System.out.println(userinfo.toString()); return \"success demo4!\"; }

@RequestMapping(\"demo5\")

public String demo5(@RequestHeader(\"source\") String source) { System.out.println(\"public String demo5() method run!\"); System.out.println(source); return \"success demo5!\"; }}

最后通过在消费端注⼊openfeign接⼝就可以调⽤响应的服务端⽅法了

因篇幅问题不能全部显示,请点此查看更多更全内容