Я пытаюсь настроить свой экспресс-шлюз таким образом, чтобы API администратора обслуживался через собственные шлюзы экспресс-шлюзов как HTTPS как apiEndpoint / serviceEndpoint.
Ниже мой gateway-config.yml
Я следовал инструкциям, указанным в документации , как мог.
https:
port: 8443
tls:
'default':
key: /usr/local/share/ca-certificates/ssl.key
cert: /usr/local/share/ca-certificates/ssl.crt
admin:
port: 8442
host: localhost
serviceEndpoints:
someExampleBackend:
url: https://some.example.com
adminBackend:
url: http://localhost:8442
policies:
- proxy
pipelines:
adminAPI:
apiEndpoints:
- admin
policies:
- proxy:
- action:
serviceEndpoint: adminBackend
domeExampleAPI:
apiEndpoints:
- general
- proxy:
- action:
serviceEndpoint: someExampleBackend
apiEndpoints:
admin:
host: localhost
general:
host: localhost
methods:
- GET
- POST
- PUT
- DELETE
- OPTIONS
paths:
- "/echo"
Я ожидал, что смогу использовать API администратора вот так:
https://localhost:8443/api-endpoints
И пример общей конечной точки, подобной этому одновременно:
https://localhost:8443/echo
Когда я это делаю, только API администратора работает как положено. Все остальные apiEndpoints возвращают 404 «Cannot GET / echo».
Когда я удаляю все с помощью admin или меняю только хост, другие apiEndpoints работают правильно.
Как мне решить эту задачу?