Как обеспечить запрос на перекрестный происхождение формы API?JAVA

Программисты JAVA общаются здесь
Anonymous
Как обеспечить запрос на перекрестный происхождение формы API?

Сообщение Anonymous »

Я пытаюсь убедиться, что API можно получить только для браузеров, не входящих в систему. v3, чтобы получить файл cookie, который используется для аутентификации пользователя и предоставления идентификатора сеанса, который бэкэнд возвращается на фронт. Позже все API называются с помощью этого. Но когда я воспроизвел это в Spring Boot, я могу достичь того же, но когда я скопирую завиток, он загружает данные. Если я изменю один заголовок, он блокируется автоматически, но я не могу понять, как приведенный выше закрепленный сайт может сделать это.@Configuration

@EnableWebSecurity

public class SecurityConfig {

private final SessionFilter sessionFilter;

public SecurityConfig(SessionFilter sessionFilter) {
this.sessionFilter = sessionFilter;
}

@Bean
public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {
http
.csrf(csrf -> csrf.disable())
.cors(cors -> {}) // enable CORS handling
.authorizeHttpRequests(auth -> auth
.requestMatchers("/auth/browser-handshake").permitAll()
.requestMatchers("/v1/search/**").authenticated()
.anyRequest().denyAll()
)
.addFilterBefore(sessionFilter, UsernamePasswordAuthenticationFilter.class);

return http.build();
}
}
< /code>
И теперь он бросает 403. Если я разрешу, то он будет доступен через почтальон или терминал. Как с этим справиться.

Подробнее здесь: https://stackoverflow.com/questions/797 ... in-request

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