Spring & Docker: Google Oauth2.0 не пропускает запросы с фронта
Не могу решить следующую проблему: Есть три образа докера: бэк на порту [8888->8080], postgresql на порту [5000->5432] и фронт на порту [9000 -> 80]. Всё работает как надо. На бэке запросы проходят: например, если вбить GET-запрос http://localhost:8888/catalog/expenses/types, то получаю результат в JSON-формате, как и ожидается; на фронте по адресу localhost:9000 показывается табличка, которая строится по результату этого GET-запроса /catalog/expenses/types.
Пытаюсь добавить аутентификацию через гугл: Сформировал на платформе гугла id и secret, поместил их в application.properties, прописал все возможные URI. В проекте добавил два файла:
SecurityConfig.java:
@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
public void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.anyRequest().authenticated()
.and()
.oauth2Login();
}
}
Также добавляю CORS, чтобы клиентский интерфейс мог получать доступ к API из другого источника - WebMvcConfig.java:
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
private final long MAX_AGE_SECS = 3600;
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowedOriginPatterns("*")
.allowedMethods("GET", "POST", "PUT", "PATCH", "DELETE", "OPTIONS")
.allowedHeaders("*")
.allowCredentials(true)
.maxAge(MAX_AGE_SECS);
}
}
Пересобираю проект. Докер-образ фронта не меняю. В результате если вбивать GET-запрос http://localhost:8888/catalog/expenses/types, то сначала выкидывает гугловскую форму авторизации и аутентификации, после успешного входа показывает всё тот же JSON-ответ, как и должно быть. Но на фронте пропадает табличка, которая строится по этому GET-запросу.
Кто-нибудь может подсказать, что не так?
В основном классе аннотировал с помощью @ConfigurationPropertiesScan() пакет, в котором оба этих файла (и не которые другие, добавленные ранее) находятся. В pom-ник зависимости подобавлял.