2016-06-29 61 views
3

我已經成功安裝了香港和映射通過管理服務由香港提供如下一個API: http://kong:8001/apis payload: { "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" }香港返回404註冊APIS

我能夠做出讓來電http://kong:8001/apis時候能得到這個API。

現在我正嘗試使用kong來訪問我的API端點: http://kong:8000/services_test/test.json 其返回的404「找不到請求的資源」。

我做錯了什麼? 我無法訪問kong的日誌。誰能告訴我kong在哪裏存儲日誌文件? 感謝您的幫助。 PS:所有網址都是假的。

回答

2

終於得到了我的答案。我在這裏做錯了是將「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」屬性爲true。 這裏是什麼文件說,大約How does Kong route a request to an API

google group

1

strip_request_path是如何工作的一些更多的信息低於: 承擔strip_request_path =trueupstream_url"= "http://test.suraj.com:9110/"request_path= "/services_test"

則:

  • test.suraj.com/services_test/test.json將被映射到http://test.suraj.com:9110/test.json

  • test.suraj.com/whatever/test.json將返回404

如果request_path是你必須設置strip_request_path財產虛假實際端點的一部分。否則將strip_request_path更改爲其他值,例如services123。那麼你的請求URL應該如下:

test.suraj.com/services123/services_test/test.json 

然後特​​區政府會按以下終點轉發這個請求:

http://test.suraj.com:9110/services_test/test.json 
2

兼用request_pathrequest_host。不要同時使用它們。