Код: Выделить всё
API-gateway,
user-management,
idm-service,
engine-service.
API-шлюз содержит конфигурацию, связанную с CORS, и я использую веб-сокет для своего движка-сервиса, поэтому у него есть конфигурация веб-сокета.
Я столкнулся с проблемой при общении с сокетом службы Engine.
Когда я пытаюсь инициировать соединение сокета из реакции. Сначала он перейдет в API-шлюз, поэтому мне нужно добавить необходимую конфигурацию CORS в API-шлюз.
Конфигурация API-шлюза:
Код: Выделить всё
cors-configurations:
'[/**]':
allowCredentials: true
allowedOrigins:
- "http://localhost:3000"
allowedHeaders: "*"
allowedMethods:
- GET
- POST
- DELETE
- PUT
- OPTIONS
- PATCH
engine-service конфигурация сокета:
Код: Выделить всё
@Override
public void registerStompEndpoints(StompEndpointRegistry registry) {
registry.addEndpoint(registryEndpoint).setAllowedOrigins("http://localhost:3000").withSockJS();
}
Код: Выделить всё
The 'Access-Control-Allow-Origin' header contains multiple values 'http://localhost:3000, http://localhost:3000', but only one is allowed.
Можете ли вы объяснить мне эту ошибку?
Для подключения через веб-сокет: Должен ли я напрямую взаимодействовать с движком-сервисом, а не через API-шлюз?
Подробнее здесь: https://stackoverflow.com/questions/790 ... ot-microse