我有两个独立的Spring Boot / Web web应用程序.jars,A和B,都是由第三方制作的,带有自己的URL映射,我事先并不知道。
我想创建一个设置,其中“localhost:8080 / A”映射(传递)到A的“/”映射。同样,“localhost:8080 / B”应该传递给B的“/”映射。
其他映射,我不一定提前知道,也应该分别通过 - 所以“localhost:8080 / A / items”应该传递给A的“/ items”等。
我没有A或B的源代码,只有.jar文件。
为了安全起见,A和B应该有不同的范围,彼此不了解或彼此互动的能力。整个设置应该表现得好像A和B是我的“外部”本地主机服务器中的独立“内部”服务器。
这可以通过Spring Boot / Web包装器或网关应用程序或其他方式实现吗?
答案 0 :(得分:0)
您可以将Zuul作为第三个应用程序使用spring boot,在8080上运行,其中A和B的路由设置类似于您所描述的。
zuul:
routes:
app-A:
path: /A/**
url: http://localhost:8081/
app-B:
path: /B/**
url: http://localhost:8082/
您的第三个应用程序的配置(application.yml)会将“A”流量指向端口8081,将“B”流量指向端口8082.
这很快,很脏,但应该让你开始。
或者,您可以使用spring cloud gateway,以获得类似类型的设置,并具有执行套接字/响应的附加功能。