热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Feign原来还能这么用,你知道吗?

目录前言请求第三方url前言一般我们使用Feign,都是用来调用注册中心注册的服务接口,但其实我们还可以使用Feign来请求第三方的url。请求第三方

目录

    • 前言
    • 请求第三方url


前言

一般我们使用Feign,都是用来调用注册中心注册的服务接口,但其实我们还可以使用Feign来请求第三方的url。



请求第三方url

1、导入Feign依赖

<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>

因为我添加了spring-cloud-dependencies&#xff0c;所以不用加版本号&#xff0c;如果没有在pom添加spring-cloud-dependencies&#xff0c;那么需要指定版本号

2、定义FeginClient接口

首先在启动类添加&#64;EnableFeignClients注解&#xff0c;这样才能扫描到Feign接口
如果Feign接口不在启动类的包下&#xff0c;那么还需要指定basePackages

例&#xff1a;&#64;EnableFeignClients(basePackages &#61; "com.xxx.yyy.client")

下面的url是我csdn的路径

&#64;FeignClient(url &#61; "https://blog.csdn.net" ,name&#61;"test")
public interface FeignClientInterface {&#64;RequestMapping(value &#61; "/qq_36551991",method &#61; RequestMethod.GET)public String getMyCsdn();
}

请求第三方的url&#xff0c;&#64;FeignClient的name和value随便填一个&#xff0c;因为这是&#64;FeignClient注解的必填属性&#xff0c;属性值随便写&#xff0c;请求第三方url最重要的是填写
FeignClient注解的url属性&#xff0c;这个url就填写我们请求的url前缀&#xff0c;然后在FeignClient方法拼接出完整的url即可&#xff0c;因为我请求返回的是一个url&#xff0c;所以使用String接收&#xff0c;入参和出参根据实际需求定义。

额外&#xff1a;name和url属性都支持占位符&#xff0c;示例如下

#在application.properties填写配置属性
feign.client.url&#61;https://blog.csdn.net//在FeignClient注解中使用占位符&#xff0c;${属性}
&#64;FeignClient(url &#61; "${feign.client.url}",value &#61; "testFeign")

3、测试

定义一个Controller&#xff0c;用来测试

&#64;RestController
public class FeignTest {&#64;Resourceprivate FeignClientInterface feignClientInterface;&#64;PostMapping("testFeign")public String testController2(){String myCsdn &#61; feignClientInterface.getMyCsdn();System.out.println(myCsdn);return myCsdn;}}

使用postman请求&#xff0c;成功返回
在这里插入图片描述


推荐阅读
author-avatar
手机用户2502856553
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有