首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Spring启动zuul代理返回针对post请求的404错误

Spring启动zuul代理返回针对post请求的404错误
EN

Stack Overflow用户
提问于 2021-06-20 23:39:37
回答 1查看 469关注 0票数 0

我正在开发一个spring微服务应用程序。我的应用程序使用api网关、zuul代理、spring,并部署在openshift上。

我的application.properties文件中有以下配置:

代码语言:javascript
代码运行次数:0
运行
复制
zuul.routes.service-name.path=/test/aos/v1/**
zuul.routes.service-name.stripPrefix=false
zuul.routes.service-name.serviceId=service-name

在访问api @ https://URL.com/test/aos/v1/info时,我会得到以下错误

代码语言:javascript
代码运行次数:0
运行
复制
{
    "timestamp": "2021-06-20T23:34:36.862+0000",
    "status": 404,
    "error": "Not Found",
    "message": "Not Found",
    "path": "/info"
}

我检查了zuul是否没有通过actuator/mappings注册,这个映射显示在那里。一切都很好。另外,如果我在OCP中直接@ https://CONTAINER_URL.com/test/aos/v1/info中调用后端API容器,那么我将得到预期的结果。

因此,我理解zuul无法找到后端api容器的url。为什么会这样?该应用程序不使用netflix,而是完全依赖openshift注册中心。

我不能和这只虫子站在一起……内部尖叫声

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-06-26 10:47:32

需要根据配置的serviceId对目标服务进行服务器列表或URL映射,该服务名为" service -name“。

与其他设置一起添加以下内容-

代码语言:javascript
代码运行次数:0
运行
复制
service-name.ribbon.NIWSServerListClassName=com.netflix.loadbalancer.ConfigurationBasedServerList
service-name.ribbon.listOfServers= https://example1.com,http://example2.com

或删除serviceId配置,并将容器的URL添加为-

代码语言:javascript
代码运行次数:0
运行
复制
zuul.routes.service-name.url=https://example.com/
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68060881

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档