400 错误请求(Kong API 网关)

时间:2021-05-04 10:58:32

标签: kong

数据设置

服务
名称:测试服务
主机:m1.com
端口:8080
协议:http

路线
名称:test-service-route
路径:/testapi
协议:https
方法:GET
strip_path: 假
保留主机:假
服务:34343444434(测试服务)

上游/目标
upstream_name > target_datails
test.api > m1.com:8080
api1.com > api1.com:443
api2.com > api2.com:443

外部代理详情
external_url > internal_url
https://api1.com > m1.com:8443 (kong data-plane1)
https://api2.com > m2.com:8443(kong data-plane2)

Kong 部署在混合模式,https://api1.com 是 data-plane1(m1.com:8443) 和 https://api2.com 是 data-plane2(m2.com:8443),示例 API 部署在m1.com:8080(http)。

用例 1:当向 https://api1.com/testapi 发出请求时,我们对自定义插件进行了很少的评估,并且返回上游“test.api”(m1.com: 8080),它可以工作。

用例 2:在评估后向 https://api2.com/testapi 发出请求时,我们将返回上游“api1.com”(api1.com:443) 并且失败并显示“ 400 bad request”(您的浏览器发送了一个该服务器无法理解的请求。原因:您对启用 SSL 的服务器端口使用纯 HTTP。请改用 HTTPS 方案访问此 URL。

在用例 2 中,当系统返回上游“api1.com”时,该功能应该与用例 1 相同但不起作用。

注意当服务协议为 https 时,同样的用例也能正常工作。

如有任何错误,请告诉我并帮助我解决此问题。

0 个答案:

没有答案