当前位置: 首页 > 知识库问答 >
问题:

是否可以在没有功能区的情况下使用@FeignClient?

司寇正志
2023-03-14

我想使用@FaignClient(url=...)并使其直接进入给定的url,而不是从ribbon配置中获取主机。

我知道在Spring,cloud-feign默认与ribbon和eureka一起出现。

根据这个:https://cloud.spring.io/spring-cloud-netflix/multi/multi_spring-cloud-ribbon.html#spring-cloud-ribbon-without-eureka可以禁用eureka并为ribbon提供一个硬编码的主机列表,例如:

${serviceId}:
  ribbon:
    listOfServers: ${host}

根据这一点:https://cloud.spring.io/spring-cloud-netflix/multi/multi_spring-cloud-feign.html可以为feign提供显式url,例如:

@FeignClient(name = "${feign.name}", url = "${feign.url}")
public interface StoreClient {
    //..
}

所以我有点困惑,到底是什么会让FaignClient使用:提供url还是ribbon配置的主机?

我希望一些道具也能为Faign禁用ribbon,因为如果给了Faign一个url,那么负载平衡有什么意义呢?

Spring云释放列车-卡姆登。SR2

共有1个答案

岑俊弼
2023-03-14

是的,您可以在没有Ribbon的情况下使用Feign,您所需要做的就是在Feign Java接口类中指定基本url。

并且您的接口签名应该具有完整的urlendpoint。

下面是一个例子。

@FeignClient(url = "http://someurl")
public interface MyInterface {

    @GetMapping("path/to/endpoint")
    MyObject get();

}

上面的示例代码显示了如何向发送GET请求http://someurl/path/to/endpoint

 类似资料:
  • 是否可以在没有实体的情况下使用JpaRepository?在这种情况下,将其替换为DTO。 如下示例所示 这种情况有替代方案吗? 注意:DTO已经映射,但我不想创建视图来将此DTO转换为实体。 我已经验证了这个主题,但没有重大进展,请使用无实体的JpaRepository交互样式 我在试这个 接口- 公共接口BffDTOInterface2{ } 我有这个错误

  • 在Spring Boot的文档中,我只找到了使用Redis会话的例子,不使用Redis也能使用它吗?

  • 问题内容: 我正在尝试创建一个与SurveyMonkey API交互的基于Java的本地客户端。 SurveyMonkey需要使用OAuth 2.0的长期访问令牌,我对此不太熟悉。 我已经搜索了几个小时,但我认为答案是否定的,但我只想确定一下: 我是否可以编写一个与SurveyMonkey交互的简单Java客户端, 而无需在某些云中设置自己的重定向服务器 ? 我觉得必须拥有自己的在线服务才能接收O

  • 我已经从源代码处构建并安装了另一个glibc,并且我想让现有的用C++编写的可执行文件与自定义glibc一起运行,以供实验之用。为了做到这一点,我尝试更改可执行文件的加载程序。首先,在/lib64下创建了一个名为的链接,其路径指向新的加载程序 其次,通过文本编辑器修改了可执行文件中的加载器路径,将“/lib64/ld-linux-x86-64.so.2”更改为“/lib64/ld_linux-x8

  • 我们有一个架构体系,有自己的应用编程接口网关、服务发现和负载平衡。然而,出于恢复目的,我需要使用Hystrix。 与Spring的云Netflix,可以Hystrix(即。断路器注释)在没有Eureka/Ribbon或其他NetflixOSS模块的情况下使用? 是否有任何依赖于Eureka/Ribbon/Zuul的断路器仪表板(即涡轮机和流聚合器)? 断路器注释可以在非Spring启动应用程序中使

  • 问题内容: 如果要使用Linq-SQL,还必须将DB Table拖到设计器表面以创建实体类。 我一直喜欢我的应用程序中的完全控制权,并且不喜欢dotnet创建的类。 是否可以使用我自己的数据访问层实体类在Linq和DB之间提供此连接? 我该如何完成? 问题答案: 您可以使用Linq-to-SQL非常轻松地编写自己的类-只需使用一些属性绘制类即可。 例如,这是我的一个项目中有一个非常简单的表,它可以