Я хочу "соединить" модуль html5 с бэкэндом nodejs, чтобы интерфейс мог обращаться к бэкэнду для логики дБ. Я обнаружил, что мне нужно создать место назначения в scp и записать его в файл mta.yaml и xs-app.js для approuter. К сожалению, это не работает должным образом, так как есть ошибка: «Not Found».
Интерфейс html5 делает просто запрос ajax.
Бэкэнд nodjs получает запросы экспрессом и работает с db.
Я создал пункт назначения в scp, который называется backendApi. URL является одним из node_backend.
Фрагмент кода из файла mta.yaml:
name: node_backend
type: nodejs
path: node_backend
requires:
- name: mongodb-nemo-t01-service
- name: cf_elb_postgres
provides:
- name: node_backend_api
properties:
url: '${default-url}'
- name: cfElbTimeline
type: html5
path: cfElbTimeline
parameters:
disk-quota: 500M
memory: 500M
build-parameters:
builder: grunt
requires:
- name: node_backend_api
group: destinations
properties:
name: backendApi
url: '~{url}'
forwardAuthToken: true
Мой файл xs-app.js:
{
"welcomeFile": "/index.html",
"authenticationMethod": "route",
"logout": {
"logoutEndpoint": "/do/logout"
},
"routes": [{
"source": "^(.*)$",
"target": "$1",
"service": "html5-apps-repo-rt",
"authenticationType": "xsuaa"
}, {
"source": "^(.*)$",
"target": "$1",
"destination": "backendApi",
"httpMethods": ["GET", "POST"],
"authenticationType": "none"
}]
}
Он уже работал один раз для доступа к бэкэнду через внешний интерфейс, но возникла проблема с репозиторием приложений html5 *1016*, поэтому представление не было видно. Поэтому я изменил его, но не могу вернуться к тому моменту, когда я смог получить доступ к бэкэнду через URL-адрес approuter . Может быть, что-то не так с регулярным выражением маршрута?
Может кто-нибудь проверить мой код или объяснить, как он должен работать?