s4sdk - не удается подключиться к микросервису NodeJS - PullRequest
0 голосов
/ 26 сентября 2018

Я занимался расширением учебника, упомянутого в шаге 9, с помощью микро-службы NodeJS.Однако у меня возникла странная проблема с сообщением к бэкэнду.

Поток, который у меня есть, - это Маршрутизатор приложений, который направляет к микросервису HTML5 (статический сборочный пакет) и использует микросервис Java или NodeJS.Часть Java прекрасно работает вместе с областями аутентификации, но для NodeJS я всегда получаю ошибку 404 (не найдена), когда я вызываю соответствующий путь / узел / привет (привет должен вернуть вывод функции с сервера).

Это xs-app.json, который я использую для маршрутизации

{
  "welcomeFile": "index.html",
  "authenticationMethod": "route",
  "websockets": {
    "enabled": true
  },
  "routes": [
    {
      "source": "/odata/v4/(.*)",
      "target": "/odata/v4/$1",
      "destination": "business-partner-api"
    },
    {
      "source": "/",
      "target": "/",
      "destination": "business-partner-frontend"
    },
    {
      "source": "/node/(.*)",
      "target": "/$1",
      "destination": "business-partner-node"
    }
  ]
}

Проблема в блоке / node, остальные работают нормально.Я также заметил еще одну странную проблему: если я заменим пункт назначения по умолчанию (/) с бизнес-партнера-интерфейса на узел бизнес-партнера, маршрутизатор приложения успешно вызовет сервер js узла с распространяемой аутентификацией, поэтому возникает проблемакаким-то образом связан с файлом xs-app, а не с самим местом назначения.

Я также безуспешно пытался добавить порт к месту назначения и добавить статический файл, отображающий проект html5, но безуспешно.

Что-нибудь, чего мне не хватает в конфигурации узла?

С наилучшими пожеланиями,

1 Ответ

0 голосов
/ 26 сентября 2018

Проблема, вероятно, в порядке ваших маршрутов, что важно для маршрутизации.Первое совпадение текущего пути с source определит маршрут.В вашем случае / второго маршрута совпадает со всеми путями, включая /node/....

. Переупорядочьте маршруты так, чтобы назначение узла предшествовало назначению внешнего интерфейса.

...