Начало работы с KrakenD

#kubernetes #kraken.js #krakend #uber-kraken

Вопрос:

Мне нужна помощь новичка, чтобы разобраться. Я запускаю его на Ubuntu. Конфигурация приведена ниже.

Я могу без проблем подключиться к API /healthz.

Моя проблема заключается в том, что путь /hello возвращает ошибку 500. Я хочу, чтобы этот путь был перенаправлен на приложение Quarkus, которое работает по адресу http://getting-started36-getting-going.apps.bamboutos.hostname.us/.

Почему это не работает? Если я изменю серверную часть /hello и использую поддельный хост, я получу результат exacts ame. Это говорит о том, что KrakendD даже не пытается подключиться к серверной части.

В журналах КракендД говорит:

Error #01: invalid character 'H' looking for beginning of value

kraken.json:

 {
      "version": 2,
      "port": 9080,
      "extra_config": {
          "github_com/devopsfaith/krakend-gologging": {
              "level": "DEBUG",
              "prefix": "[KRAKEND]",
              "syslog": false,
              "stdout": true,
              "format": "default"
          }
      },
      "timeout": "3000ms",
      "cache_ttl": "300s",
      "output_encoding": "json",
      "name": "KrakenD API Gateway Service",
      "endpoints": [
          {
              "endpoint": "/healthz",
              "extra_config": {
                  "github.com/devopsfaith/krakend/proxy": {
                      "static": {
                          "data": {       "status": "OK"},
                          "strategy": "always"
                      }
                  }
              },
              "backend": [
                  {
                      "url_pattern": "/",
                      "host": ["http://fake-backend"]
                  }
              ]
          },
          {
              "endpoint": "/hello",
              "extra_config": {},
              "backend": [
                  {
                      "url_pattern": "/hello",
                      "method": "GET",
                      "host": [
                          "http://getting-started36-getting-going.apps.bamboutos.hostname.us/"
                      ]
                  }
              ]
          }
      ]
    }
 

Что я упускаю?

Ответ №1:

добавьте «кодировку»: «строку» в внутренний раздел.

 "backend": [
                  {
                      "url_pattern": "/hello",
                      "method": "GET",
                      "encoding": "string" ,
                      "host": [
                          "http://getting-started36-getting-going.apps.bamboutos.hostname.us/"
                      ]
                  }
              ]