运行HAL浏览器,Spring Data Rest和NGINX的问题

时间:2016-12-14 17:42:11

标签: spring nginx spring-boot spring-data-rest

我正在使用Spring Boot 1.4.2生成一个Spring数据REST服务,该服务托管在Docker容器中,部署到CoreOS集群,路由由NGINX处理。呼。我正在尝试将HAL浏览器添加到这个混合中,我遇到了问题。

NGINX宣传的网址是:

http://api.mycompany.com/api/postal-codes/v1/

NGINX将其映射到在特定端口上运行的CoreOS中的节点,例如100.200.300.400:12345:/。

HAL导出的链接如下所示:

http://api.mycompany.com/postalCodes{?page,size,sort}

HAL不包含“/ api / postal-codes / v1”部分。我熟悉spring.data.rest.base-path配置并尝试了但无济于事。当我启用该选项时,情况如下:

要访问该服务,路径现在是:

http://api.mycompany.com/api/postal-codes/v1/api/postal-codes/v1/

HAL导出的链接如下所示:

http://api.mycompany.com/api/postal-codes/v1/postalCodes{?page,size,sort}

所以我在追逐我的尾巴。 HAL链接现在包括/ api / postal-codes / v1,但服务URL也已移动。

有没有办法让广告中的网址和导出的链接排成一行?

NGINX配置将请求重写到上游,剥离/ api / postal-codes / v1并替换为/。 Spring Boot的默认basePath是/,它解释了为什么HAL具有它所做的链接,而不是那些有效的链接。

0 个答案:

没有答案