当前位置: 首页 > 知识库问答 >
问题:

带有POST请求的Spring引导安全CORS

诸新霁
2023-03-14

我有Spring Boot REST API和React基于CMS。

BasicWebSecurityConfigurerAdapter.kt

override fun configure(http: HttpSecurity?) {
    http?.csrf()?.disable()
    http?.cors()
    http?.authorizeRequests()
            ?.anyRequest()?.authenticated()
            ?.and()
            ?.httpBasic()
}

@Bean
fun corsConfigurationSource(): CorsConfigurationSource {
    val configuration = CorsConfiguration()
    configuration.allowedOrigins = mutableListOf("http://localhost:3000")
    configuration.allowedMethods = mutableListOf("GET", "POST")

    val source = UrlBasedCorsConfigurationSource()
    source.registerCorsConfiguration("/**", configuration)

    return source
}

我也尝试在我的RestControllers上使用注释,但我遇到了同样的问题,GET请求可以工作,POST请求不能工作。我对Spring Boot还是相当陌生的,所以我肯定有些东西我遗漏了。

共有1个答案

丁鸿信
2023-03-14

好的,当我重读代码时,我发现了为什么这不起作用的原因。CMS not Spring BootAPI中有一个bug。我使用了错误的APIendpoint。所以你不会得到404错误,而是CORS一。

但是,由于某些原因,CORS不能使用WebSecurityConfigurerAdapter工作。相反,我回到了在控制器上使用注释@CrossOrigin。

 类似资料:
  • 具有状态405和身份验证的页面不工作。 来自 Spring 引导日志的错误 o.s.web.servlet.不支持请求方法POST jsp页面出错: 白标错误页面 该应用程序没有针对/error的显式映射,因此您可以将它视为一个后备。 出现意外错误(类型=不允许方法,状态=405)。不支持请求方法“POST” Spring信息: -使用Spring Security 3.2.5 -使用Spring

  • 我使用的是Spring boot,这里是maven依赖项 我试图用Angular创建一个HTTP请求帖子(我也有一个工作正常的GET请求),但我得到了这个 在响应头中 我意识到在响应中,allow没有POST方法。 控制器中的方法

  • 我有一个非常简单的HTML表单页面(它是src/main/resources/public/web.HTML中Spring Boot web应用程序的一部分),用于将一个字符串从文本区发布到Spring Boot web应用程序版本1.5.2。 和SpringBoot类来处理POST请求:

  • 你好,我在使用Ldap创建简单登录时遇到问题。我已经从spring.io网站下载了入门项目:入门LDAP。 它可以很好地与ldif文件配合使用,但我想用运行ldap服务器来代替它。我已经试了好几天了,没有任何进展。我用这段代码获得了最好的结果(替换为getting started project的WebSecurity配置) 如果我尝试使用格式为“用户名”“密码”的良好用户名和密码登录控制台输出:

  • ----在2019-06-03@13:21 CET下面添加信息----因为我有一个普通的Spring(非引导)应用程序接受来自打印机的POST请求,所以我能够在传入的请求中记录信息。所以我就这么做了。 这是来自打印机的POST请求之一,Spring boot Oontroller不接受它: 这是Postman向完全相同的URL发送的POST请求之一,Spring boot Oontroller接受

  • 我是Spring的新手,正在尝试用RestTemplate执行rest请求。Java代码应该执行与下面curl命令相同的操作: 但服务器拒绝了带有的RestTemplate