HTTP / REST服务Spring Cloud连接器

时间:2018-12-17 15:26:48

标签: spring-cloud cloudfoundry

Spring Cloud REST-API Connector是否有任何通用实现,还是应该从scratch开始?

应用与其他应用交互的方式取决于云环境,例如:

  • app1可以在没有TLS和授权的情况下使用app2 REST服务,如果它们之间存在internal routing
  • 但否则,app1必须使用TLS和授权来完成

我可以想象有一个RestServiceConnector和一个RestTemplateFactory,它们创建了一个RestTemplateinterceptors,并将授权连接到HTTP连接。一切都取决于云环境,就像the RabbitMQ connector

这不是普遍需要吗?

1 个答案:

答案 0 :(得分:1)

有一个示例说明如何在spring-boot-cities示例项目中完成此操作。这个示例与您所建议的有所不同,因为它为服务提供的域建模,而不是提供更通用的RestTemplateWebClient接口。

该示例不包括Cloud Foundry内部路由功能的知识,因为该示例是在CF中可用之前开发的。这是一个不错的功能,但是使用内部路由确实需要对已部署应用程序进行其他配置:

  

默认情况下,应用程序无法在容器上相互通信   网络。要允许应用相互通信,您必须创建   网络策略。

我们不希望在核心Spring Cloud Connectors项目中包含这样的新功能,因为我们希望将核心项目的范围限制为当前支持的服务。 project page底部的Community Extensions部分中列出了一组已知的Connector扩展项目。如果您可以使用类似于已列出的扩展库的独立扩展库,则很高兴将您的项目添加到该列表中。