微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Kubernetes:使用 NGINX Ingress 简单扇出保留 HTTP 方法

如何解决Kubernetes:使用 NGINX Ingress 简单扇出保留 HTTP 方法

当我们使用“简单扇出”Ingress 模式时,如下所述:https://v1-18.docs.kubernetes.io/docs/concepts/services-networking/ingress/#simple-fanout(我们使用的是 v1.18),Ingress 执行简单的重定向,发送 302 - Found

这会导致 HTTP 方法更改为 GET。

我正在尝试让 Ingress 提供 307 或 308 响应。

我试过使用 Nginx/k8s 注释,我试过在这里应用这种方法Kubernetes NGINX Ingress changes HTTP request from a POST to a GET 但这不起作用

我们有 2 个应用程序在后台使用不同的端口映射到同一服务器。

奇怪的是,POST 用 curl 保存得很好

解决方法

最终它与 K8S 或 NGINX 没有任何关系:

我想使用的端点被映射到上下文中的“/”(即/blah/

由于它是一个 API,所以带有尾部斜杠的东西是不寻常的,所以我用 /blah 来指代它,底层应用服务器用 302 将其重写为 /blah/

通过使用 /v1 作为上下文(和入口路径)修复它,所以我可以拥有 /v1/blah 并且它不会重写/重定向。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。