问题标签 [feign]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
667 浏览

spring-cloud - 查询值包含 `{aa%` 导致 feign 返回 http 状态码 400

我在 spring-cloud 中使用 feign,我遇到了问题。

这是我的假客户定义。

此调用将返回状态码 400 。

然后我查看了代码,我在 RequestTemplate 类中找到了这段代码:

encodeIfNotVariable在 query(String name, String... values) 中调用的方法。

这意味着如果值包含{and 在 first 中,则该值不能被编码。

我怎样才能解决这个问题?

0 投票
6 回答
49963 浏览

java - Netflix Feign - 通过微服务传播状态和异常

我正在使用Netflix Feign将微服务 A 的一个操作调用到微服务 B 的其他其他操作,该微服务 B 使用 Spring Boot 验证代码。

微服务 B 的操作在验证失败的情况下抛出异常。然后我在微服务中处理并返回一个HttpStatus.UNPROCESSABLE_ENTITY(422),如下所示:

因此,当微服务 A 在接口中调用 B 时,如下所示:

并且验证失败,它返回一个内部错误 500 并带有下一条消息:

但是我需要返回和微服务操作B一样的。

使用 Netflix Feign 通过微服务传播状态和异常的最佳方式或技术是什么?

0 投票
5 回答
34000 浏览

spring - spring boot feign客户端获取HTTP 404

我目前正在检查如何在我的一个项目中使用 Feign 作为声明式 REST 客户端。

以下是 Feign 客户端

此接口在一项服务中自动装配

将 EnableFeignClients 添加到 SpringBootApplication

pom.xml 中的依赖项、父项等

依赖

在为我的 feign 客户端调试 spring create 代理时,我可以看到我尝试在功能区的帮助下调用此服务,它工作正常,但是当我在我的 feign 客户端中执行方法定义时。我得到feign.FeignException: status 404 reading

0 投票
4 回答
3325 浏览

netflix-feign - Feign 是线程安全的吗……?

Feign线程的实例是否安全......?我找不到任何支持这一点的文档。外面有人不这么认为吗?

这是在 github repo 上发布的 Feign 的标准示例...

我应该将其更改为以下...是否线程安全...?

对于上面的示例...我使用基于弹簧的组件来突出显示单例。提前致谢...

0 投票
3 回答
4682 浏览

java - 如果受 hystrix 保护的调用超时,我可以抛出自定义错误吗?

我有一个使用这个外部调用的假客户:

在我的application.yml我有这个设置:

现在,如果 getResourceA 超时,即完成时间超过一秒钟,我要么得到这个:

或者,如果我定义了一个我自己抛出异常的回退,我会得到:

我不能从后备中抛出自己的异常吗?

如果我想在服务关闭时抛出自己的异常怎么办?我不想有后备(因为我没有从后备返回的合理价值),而是抛出我自己可以捕获的错误并让程序恢复。有人可以帮我解决这个问题吗?

本回答后更新:

所以我尝试了捕获 HysterixRuntimeException 并检查导致它的原因的方法,但最终得到了这个丑陋的代码:

所有这些都能够在超时时抛出 MyOwnException。肯定还有别的办法吗?

0 投票
0 回答
1050 浏览

java - 假装客户端在文本/csv 响应上出错

我在 Spring 中为休息控制器创建的 feign 客户端存在问题,在这种方法中,我在 HttpServletResponse 上写了一个 csv 字符串,但是当我想测试 feign 实现时显示控制台错误。

假装的实现是:

任何人都可以帮我解决这个问题吗?

0 投票
1 回答
2812 浏览

java - 在 HystrixFeign 客户端回退中获取原因的问题

我有 HystrixFeign 客户端,我正在尝试在我的回退实现中获取原因/异常,因为我真的很想知道回退的原因,以便我可以解决服务调用失败的问题。但是下面的实现并没有让我明白原因。这工作得很好,并且回退一直被调用。但我不知道为什么。我是 Feign 和 Hystrix 的新手。我的应用程序是 1.6 年前用 java 编写的,这是一种增强调用。所以我不能使用任何 lambda 表达式。

我有如下定义的客户端接口

我的 FeignClientFacory 如下所示

0 投票
7 回答
36176 浏览

java - 如何使用 spring-cloud-netflix 和 feign 编写集成测试

我使用 Spring-Cloud-Netflix 进行微服务之间的通信。假设我有两个服务,Foo 和 Bar,Foo 使用 Bar 的 REST 端点之一。我使用带有注释的接口@FeignClient

然后我SomeService在 Foo 中有一个服务类,它调用BarClient.

现在,为了确保服务之间的通信正常进行,我想构建一个测试,使用 WireMock 之类的东西向一个假的 Bar 服务器触发一个真实的 HTTP 请求。测试应确保 feign 正确解码服务响应并将其报告给SomeService.

如何将这样的 WireMock 服务器注入到 eureka 中,以便 feign 能够找到它并与之通信?我需要什么样的注释魔法?

0 投票
4 回答
5175 浏览

spring-cloud - 如何微调 Spring Cloud Feign 客户端?

Spring Cloud文档说:

如果 Hystrix 在类路径上,默认情况下 Feign 将使用断路器包装所有方法。

  1. 这很好,但是如何配置 Hystrix 选项以忽略某些异常?我有一个ErrorDecoder将 HTTP 状态代码映射到异常的实现。如果我@HystrixCommand使用这个方法,Feign 会尊重它吗?
  2. 我们的要求是记录对依赖项发出的每个 HTTP 调用的各种详细信息。目前我有一个装饰RestTemplate可以做到这一点。根据我在代码中看到的内容以及 Dave Syer 在此处的回答,Feign 不使用RestTemplate. 那么如何满足日志记录要求呢?该界面feign.Client看起来很有希望,尽管我不完全确定是否可以使用。
0 投票
1 回答
9063 浏览

java - 模拟 FeignClient 响应

可以通过 MockRestServiceServer(restTemplate) 模拟响应 FeignClient 吗?这个例子不起作用:

应用程序类

票务服务类

测试配置类

MyTest.class

但是向真实服务器 example.com 发出请求。