先决条件
我有一个api网关,它隐藏了一组微服务。 这个api网关使用zuul将Urls映射到不同的微服务。
zuul:
routes:
service1:
path: /service1/**
serviceId: FIRST-MICROSERVICE
service2:
path: /service2/**
serviceId: SECOND-MICROSERVICE
service3:
path: /service3/**
serviceId: THIRD-MICROSERVICE
问题
我希望能够使用spring-boot在不同的端口上启动api网关,如下所示:
java -jar -Dserver.port=8081 myspringbootapplication.jar
主机应始终是从中传送angularjs应用程序的主机。
问题是端口依赖于tomcat服务器的端口spring-boot startet。
目前http://localhost:9001
是硬编码的。
.factory('app.core.services.myApiResource', ['$resource', '$http',
($resource:ng.resource.IResourceService, $http:ng.IHttpService):ng.resource.IResourceClass<ng.resource.IResource<any>> => {
var apiRoot : ng.resource.IResourceClass<ng.resource.IResource<any>>
= $resource('http://localhost:9001/service1/myentity/search/:finderName');
return apiRoot;
}
])
在bootstrap.yml中,默认端口为9001
# Default ports
server.port: 9001
有没有办法将angularjs $ resource中的端口值设置为spring-boot server.port值?