我遇到了使用Spring FeignClient解决的问题。
我有两个端点发送短信,两者都是相同的行为:
我该如何解决这个问题?
今天我有一个FeignClient注释界面,只有一个URL 我尝试使用FeignBuilder在运行时创建请求并更改URL但没有成功。
如何使用Feign控制客户端的服务回退,例如:
@Value(${sms.urls})
List<String> endPoints;
for (endPoint : endPoints){
if(endPoint.isUp())
return makeRequest(endPoint).
}
答案 0 :(得分:1)
关于使用FeignBuilder,也许您可以找到问题的答案here
如果这不起作用,我建议在界面周围创建一个包装类。
当我不得不在过去处理这样的问题时,我只是创建了一个使用Feign客户端界面的类。 Spring将根据您使用@FeignClient注释注释您的假装客户端的事实来处理您的布线。这样您就可以修改包装类的行为。您可以在方法中编写回退逻辑,并根据需要调用假装客户端。
希望这有帮助