我已经成功安装了 Kong 并通过 Kong 提供的管理服务映射了一个 API,如下所示:http://kong:8001/apispayload:{"upstream_url": "http://test.suraj.com:9110/""strip_request_path": true"request_path": "/services_test""preserve_host": false"name": "services_test""request_host": "test.suraj.com"}
在对 http://kong:8001/apis 进行 get 调用时,我能够获得此 API。

现在我正在尝试使用 kong 访问我的 API 端点,例如:http://kong:8000/services_test/test.json它返回 404 "请求的资源未找到"。

我做错了什么?
我无法访问 kong 的日志。谁能告诉我kong在哪里存储日志文件?
谢谢你的帮助。
PS:所有网址都是虚拟的。

最佳答案

终于,我得到了我的答案。

我做错的是将 strip_request_path 属性设置为 true。
通过在 API 上启用 strip_request_path 属性,请求将被代理,而 request_path 属性不会包含在上游请求中。

就我而言,实际的 API 端点是:
http://test.suraj.com:9110/services_test/test.json
并且 Kong 正在将请求重定向到:
http://test.suraj.com:9110/test.json
因为 strip_request_path 属性为真。

这是关于 How does Kong route a request to an API 的文档说明

来自 google group 的更多信息

关于api - Kong 为注册的 APIS 返回 404,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38100812/

10-13 01:27