首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >@CrossOrigin不适用于spring-boot-starter-web 2.5.2

@CrossOrigin不适用于spring-boot-starter-web 2.5.2
EN

Stack Overflow用户
提问于 2021-07-07 18:40:40
回答 4查看 147关注 0票数 0

我有Spring Boot rest控制器,它公开了我想在Angular 12中使用的某些API。在这个控制器上,我添加了@CrossOrigin,但spring-boot似乎没有接收到它,因为即使添加了注释,我也会遇到Cors策略问题。

代码语言:javascript
运行
复制
@CrossOrigin(origins = "*")
@RestController
@Scope(WebApplicationContext.SCOPE_REQUEST)
@RequestMapping("api/rest")
public class MyController {

cors error

EN

回答 4

Stack Overflow用户

发布于 2021-07-08 02:10:56

我认为您已经为特定的控制器启用了跨域。您可以通过在其他控制器上添加@CrossOrigin(origins = "*")来启用跨域,也可以通过创建bean来全局配置跨域,如下所示

代码语言:javascript
运行
复制
@Bean
public WebMvcConfigurer corsConfigurer() {
    return new WebMvcConfigurer() {
        @Override
        public void addCorsMappings(CorsRegistry registry) {
            registry.addMapping("/**").allowedOrigins("*");
        }
    };
}
票数 0
EN

Stack Overflow用户

发布于 2021-07-07 19:03:37

您尝试过将其添加为@CrossOrigin(origins = "http://localhost:<your_port>")

其中your_port是你的angular应用程序使用的端口?

票数 -1
EN

Stack Overflow用户

发布于 2021-07-07 20:20:22

尝试以下代码:

代码语言:javascript
运行
复制
@CrossOrigin(allowCredentials = "true")
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68284482

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档