AWS: ошибка CORS при загрузке Spring + приложение Angular – на некоторых компьютерахJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 AWS: ошибка CORS при загрузке Spring + приложение Angular – на некоторых компьютерах

Сообщение Anonymous »

Elastic Beanstalk — я создал среду с помощью Corretto 17.
Загрузил JAR-файл моего приложения Spring Boot.
UserController:

Код: Выделить всё

@RestController
@RequestMapping("/api")
public class UserController {
...
@PostMapping("/login")
public LoginResponse loginUser(@RequestBody UserDto userDto) {
return userService.loginUser(userDto);
}
Конфигурация CORS:

Код: Выделить всё

@Configuration
@EnableWebSecurity
public class SecurityConfig {

...

@Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
http
.cors(withDefaults())
.csrf(AbstractHttpConfigurer::disable)
.authorizeHttpRequests(request -> request
.requestMatchers(POST, "/api/register").permitAll()
.requestMatchers(GET, "/api/register/confirm**").permitAll()
.requestMatchers(POST, "/api/login").permitAll()
.anyRequest().authenticated())
.sessionManagement(session -> session.sessionCreationPolicy(STATELESS))
.authenticationProvider(authenticationConfig.authenticationProvider())
.addFilterBefore(jsonWebTokenFilter, UsernamePasswordAuthenticationFilter.class);
return http.build();
}

@Bean
public CorsConfigurationSource corsConfigurationSource() {
CorsConfiguration configuration = new CorsConfiguration();
configuration.addAllowedOrigin("*");
configuration.setAllowedHeaders(Arrays.asList("Authorization", "Content-Type", "Accept"));
configuration.setAllowedMethods(Arrays.asList("GET", "POST", "PUT", "DELETE"));
configuration.setAllowCredentials(true);

UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
source.registerCorsConfiguration("/**", configuration);
return source;
}
}
Amazon S3 → Корзины → Корзина с серверной частью → Разрешения → Совместное использование ресурсов между источниками (CORS):

Код: Выделить всё

[
{
"AllowedHeaders": [
"*"
],
"AllowedMethods": [
"POST",
"GET",
"PUT",
"DELETE"
],
"AllowedOrigins": [
"*"
],
"ExposeHeaders": []
}
]
В другом сегменте я установил интерфейс.
Angular, UserService:

Код: Выделить всё

export class UserService {
private baseUrl = 'http://mybooks.eu-north-1.elasticbeanstalk.com/api';
...
login(user: any): Observable {
return this.httpClient.post(`${this.baseUrl}/login`, user);
}
Я пробовал использовать определенные ссылки в конфигурации SecurityConfig и CORS в корзине s3.
Я пробовал @CrossOrigin в классе контроллера.
Изменить:
CORS, когда я пытаюсь зарегистрироваться или войти в систему - для компьютера, на котором я работаю (win10). Но я попробовал на другом компьютере (Win7, то же подключение к Интернету). А CORS нет, могу зарегистрироваться, могу войти. Все работает. Другой компьютер - не работает. Телефон - работает.


Подробнее здесь: https://stackoverflow.com/questions/786 ... -computers
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»