В запрошенном ресурсе отсутствует заголовок Access-Control-Allow-Origin — при попытке получить запросы.JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 В запрошенном ресурсе отсутствует заголовок Access-Control-Allow-Origin — при попытке получить запросы.

Сообщение Anonymous »

Несмотря на то, что я добавил @CrossOrgin

Я все равно получаю ошибку CORS: http://localhost:8080/customer/details/shkhamiz@gmail. com» из источника «http://localhost:5173» заблокирован политикой CORS: ответ на предполетный запрос не проходит проверку контроля доступа: в запрошенном ресурсе отсутствует заголовок «Access-Control-Allow-Origin».


Изменить: я только что заметил, что для
.requestMatchers("auth/**") ошибок не возникает. .permitAll() выглядит как проблема с конфигурацией безопасности

может ли кто-нибудь помочь
Очевидно, только те запросы, которые разрешено без аутентификации в конфигурации безопасности, не выдает никаких ошибок
вот код контроллера
@CrossOrigin(origins = "http://localhost:5173/")
@RestController
@RequestMapping("customer")
public class CustomerController {
private final CustomerService customerService;

public CustomerController(CustomerService customerService) {
this.customerService = customerService;
}

@PutMapping("details")
public ResponseEntity addDetailsOfCustomer(@RequestBody Customer customer) {
return new ResponseEntity(customerService.addDetailsOfCustomer(customer), HttpStatus.OK);
}
@GetMapping("details/{username}")
public ResponseEntity getDetailsOfCustomer(@PathVariable String username) {
Customer customer = customerService.getDetailsOfCustomer(username);
return new ResponseEntity(customer,HttpStatus.OK);
}
@PostMapping("address/{username}")
public ResponseEntity addAddressToCustomer(@RequestBody Address address, @PathVariable String username) {
return new ResponseEntity(customerService.addAddress(address,username),HttpStatus.CREATED);
}
}

вот код конфигурации безопасности
@Configuration
public class SecurityConfig {
private final AuthenticationProvider authenticationProvider;
private final JwtFilter jwtFilter;

public SecurityConfig(AuthenticationProvider authenticationProvider, JwtFilter jwtFilter) {
this.authenticationProvider = authenticationProvider;
this.jwtFilter = jwtFilter;
}

@Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
return http
.authorizeHttpRequests(auth -> auth
.requestMatchers("auth/**")
.permitAll()
.requestMatchers("api/user/**")
.hasAuthority(Role.USER.name())
.requestMatchers("api/restaurant/**")
.hasAuthority(Role.RESTAURANT_OWNER.name())
.anyRequest()
.authenticated())
.sessionManagement(session -> session.sessionCreationPolicy(SessionCreationPolicy.STATELESS))
.csrf(AbstractHttpConfigurer::disable)
.authenticationProvider(authenticationProvider)
.addFilterBefore(jwtFilter, UsernamePasswordAuthenticationFilter.class)
.build();
}
}


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

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

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

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

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

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

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