我陷入了这个问题:我在后端使用Spring启动应用程序,在前端使用角度应用程序,问题是当我在后端调用一个特定的Rest网址时,该URL使用我已添加到后端的jar依赖项作为maven系统范围依赖项,我得到一个cors错误。所有其他后端网址工作正常
这是我如何包含后端的jar依赖项:
<dependency>
<groupId>com.ex</groupId>
<artifactId>lib</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/src/main/resources/Utils.jar</systemPath>
</dependency>
还要注意,我在前端和后端之间使用了Zuul调度程序,并且我在后端进行了此配置
@Component
公共类 CorsFilter 扩展 OncePerRequestFilter {
@Override
protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException {
response.setHeader("Access-Control-Allow-Origin", "*");
response.setHeader("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS");
response.setHeader("Access-Control-Max-Age", "3600");
response.setHeader("Access-Control-Allow-Headers", "authorization, content-type, xsrf-token, Content-Range, Content-Disposition, Content-Description, GAuth");
response.addHeader("Access-Control-Expose-Headers", "xsrf-token");
if ("OPTIONS".equals(request.getMethod())) {
response.setStatus(HttpServletResponse.SC_OK);
} else {
filterChain.doFilter(request, response);
}
}
}
任何帮助都将不胜感激,谢谢
首先,您需要在控制器中添加@CrossOrigin
注释。这里是文档中的正确配置:
@Bean
public WebMvcConfigurer corsConfigurer() {
return new WebMvcConfigurer() {
@Override
public void addCorsMappings(CorsRegistry registry) {
registry.addMapping("/**")
.allowedOrigins("*")
.allowedMethods("*")
.allowedHeaders("*");
}
};
}
您可以用自己的方式进行配置。
其次,如果您使用的是SpringSecurity,
则需要将.cors()
添加到您的配置中。
例:
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.cors().and()
.csrf().disable()
.authorizeRequests()
.anyRequest().permitAll()
.and().httpBasic();
}
当我尝试在角7网络应用程序中执行补丁请求时,我遇到了一个问题。在我的后端,我有: 在我的前端服务中,我: 错误是: 我能做什么?谢谢
访问位于“”的XMLHttpRequesthttp://localhost:8080/api/auth/signup“起源”https://mysuite.ru'已被CORS策略阻止:对飞行前请求的响应未通过访问控制检查:飞行前请求不允许重定向。 通过nginx重定向 使现代化 请求标头: 加载项nginx: 还没有结果
CORS策略已阻止CORS从源站对X处XMLHttpRequest的访问:对飞行前请求的响应未通过访问控制检查:它没有HTTP ok状态。 嗨,我正在努力解决我的问题与CORS拒绝我的Vue组件与外部API与axios的交互,因为它返回此错误。我尝试了使用Barryvdh的Cors头支持和制作中间件和自定义路由。这根本行不通。Barryvdh回购中README. md中提到的一切都已经完成,不幸的
我的应用程序最近收到一个错误 “在'https://my-service-domain/socket.io/?EIO=3 当我连接到 socket.io。我还没有找到这个问题的解决方案,我将详细描述如下图所示,是否有人遇到过此错误。 服务器配置: 客户端配置: 我试图切换webocket连接选项,我得到了错误 "WebSocket连接到'wss://my-service-field/socket.
我了解了Firebase托管的标头配置,所以我这样做了: 在app中,在didChangeDependencies中有一个简单的firebase初始化,带有所需的数据。然后firebase auth . instance . signinwithemailandpassword(...)关于index.html的一段关于火垒的话: 我在Chrome中测试过很多次,总是失败。只有在localhost