反应、SpringBoot 和 CSRF
React, SpringBoot and CSRF
我正在使用 Spring 引导安全性:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
我已禁用 CSRF:
@Slf4j
@Configuration
public class AuthConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
super.configure(http);
http.csrf().disable();
}
}
使用 npm start
,我 运行 在我的 React 应用程序中添加以下代码:
axios
.post(this.state.targetUrl+'/mpbpm/triggerProcess', {
headers: {
'Access-Control-Allow-Origin': '*',
'Access-Control-Allow-Methods': 'GET,PUT,POST,DELETE,PATCH,OPTIONS'
}
})
结果是:
Failed to load http://localhost:8080/mpbpm/triggerProcess: Response for preflight has invalid HTTP status code 401.
为什么失败了?我正在尝试学习 React,我有试图从服务器检索值的虚拟代码。让这个工作最简单的方法是什么?
此处:
axios
.post(this.state.targetUrl+'/mpbpm/triggerProcess', {
headers: {
'Access-Control-Allow-Origin': '*',
'Access-Control-Allow-Methods': 'GET,PUT,POST,DELETE,PATCH,OPTIONS'
}
})
您正在添加自定义 headers 并发送 cross-origin 提取以触发预检请求。服务器没有为这种流量做好准备,一切都会导致错误。删除那些 headers.
我正在使用 Spring 引导安全性:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
我已禁用 CSRF:
@Slf4j
@Configuration
public class AuthConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
super.configure(http);
http.csrf().disable();
}
}
使用 npm start
,我 运行 在我的 React 应用程序中添加以下代码:
axios
.post(this.state.targetUrl+'/mpbpm/triggerProcess', {
headers: {
'Access-Control-Allow-Origin': '*',
'Access-Control-Allow-Methods': 'GET,PUT,POST,DELETE,PATCH,OPTIONS'
}
})
结果是:
Failed to load http://localhost:8080/mpbpm/triggerProcess: Response for preflight has invalid HTTP status code 401.
为什么失败了?我正在尝试学习 React,我有试图从服务器检索值的虚拟代码。让这个工作最简单的方法是什么?
此处:
axios
.post(this.state.targetUrl+'/mpbpm/triggerProcess', {
headers: {
'Access-Control-Allow-Origin': '*',
'Access-Control-Allow-Methods': 'GET,PUT,POST,DELETE,PATCH,OPTIONS'
}
})
您正在添加自定义 headers 并发送 cross-origin 提取以触发预检请求。服务器没有为这种流量做好准备,一切都会导致错误。删除那些 headers.