Fre*_*ool 26 spring-cloud netflix-feign
我的目标是创建一个不同步骤的策略,以便使用eureka,ribbon,hystrix从2个组件之间的点对点通信到"完全成熟的netflix"通信方式.每次迭代我想添加更多,同时我尝试限制实际代码的更改量.假设是我首选的客户端框架来实现这一目标.第一步是创建一个FeignClient来与服务器通信:
@FeignClient(url = "http://localhost:9000")
interface Client {
@RequestMapping(method = RequestMethod.GET, value = "/author/{author}/addedValue/{addedValue}")
Result addToTotal(@RequestParam(value="author") String author, @RequestParam(value="addedValue") long addedValue);
}
Run Code Online (Sandbox Code Playgroud)
这有效,但我不希望在注释中对URL进行硬编码.我想这个:@FeignClient()并有一个属性构造,如:client.url:http:// localhost:9000
到目前为止,我找不到任何关于如何配置的线索,我无法在spring-cloud源中找到解决方案.
它可以做到,如果是的话; 怎么样?
Dav*_*yer 39
它可以使用"serviceId"而不是"url"来完成.例如
@FeignClient("foo")
interface Client { ... }
Run Code Online (Sandbox Code Playgroud)
和
foo.ribbon.listOfServers: localhost:9000
Run Code Online (Sandbox Code Playgroud)
例如,请参阅http://projects.spring.io/spring-cloud/spring-cloud.html#spring-cloud-ribbon-without-eureka获取文档.
cod*_*123 22
这可以这样做:
@FeignClient(name="fd-mobileapi-service",url="${fdmobile.ribbon.listOfServers}")
Run Code Online (Sandbox Code Playgroud)
在哪里fdmobile.ribbon.listOfServers : value的财产application.properties.
我测试了它,它正在工作.
| 归档时间: |
|
| 查看次数: |
38440 次 |
| 最近记录: |