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

按application.properties启用CORS的Spring引导

叶文博
2023-03-14

我的基本配置是:

endpoints.cors.allow-credentials=true
endpoints.cors.allowed-origins=*
endpoints.cors.allowed-methods=*
endpoints.cors.allowed-headers=*

我尝试了这些变量的不同组合,但仍然不起作用。有什么想法吗?

共有1个答案

羊冠玉
2023-03-14

这在官方的Spring文档中不是很清楚,很容易被链接在这里的官方Spring Boot文档误导

事实是,您不能使用application.properties文件设置全局CORS拥塞。您必须像这里所描述的那样使用JavaConfig。

只需在扩展WebMVCConfigurerAdapter并重写AddCorsMappings方法的@enableWebMVC类上使用@Configuration注释,如下所示:

@Configuration
@EnableWebMvc
public class WebConfig extends WebMvcConfigurerAdapter {

    @Override
    public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/api/**")
            .allowedOrigins("http://domain2.com")
            .allowedMethods("PUT", "DELETE")
            .allowedHeaders("header1", "header2", "header3")
            .exposedHeaders("header1", "header2")
            .allowCredentials(false).maxAge(3600);
    }
}
 类似资料:
  • 我为所有源和头启用了cors,但当我从angular应用程序调用方法到spring Boot时,仍然会出现cors错误。 控制台的Cors错误: 我的(我调用getbyemail): 我从我的angular应用程序中调用get: 我还尝试添加: 并在我的中添加了配置文件: 但还是没有运气...

  • 我试图在Spring Boot应用程序中启用CORS支持,但没有成功。我研究了很多解决方案,但似乎都不适合我。 当我尝试从Angular应用程序呼叫Java后端时,我在chrome中看到了错误: CORS策略阻止从源http://localhost:4200在http://localhost:8080/..处访问XMLHttpRequest:对预检请求的响应不通过权限改造检查:不允许对预检请求进行

  • 我使用的是Spring Boot版本2.0.2Release。下面是我的安全配置 加载http://localhost:8080/myurl失败:对预飞行请求的响应未通过访问控制检查:请求的资源上没有“access-control-allow-origin”标头。因此,不允许访问源“http://localhost:4200”。响应的HTTP状态代码为403。

  • 问题内容: 如何在Spring 5 Webflux项目中启用 CORS ? 我找不到任何适当的文档。 问题答案: 这是Webflux配置器的另一种解决方案。 旁注:它的Kotlin代码(从我的项目中复制),但是您可以轻松地将其转换为Java代码。

  • 如何在Spring Security标签(即令牌url)中启用CORS。我使用的是spring security 3.1和spring mvc 4.3.12。我已成功生成令牌以保护API,但无法在令牌url中启用CORS。我使用了以下代码来生成访问令牌 spring-security.xml 这就是我启用CORS但不起作用的方式 dispatcher servlet。xml 这就是我得到的错误 登

  • 我需要为使用 应用程序中的< code>listCompanies方法获取< code>json。我收到< code > No ' Access-Control-Allow-Origin ' header is present 错误,所以我认为这是< code>CORS问题。