Spring Boot和Angular Cli之间的交叉原点是如何工作的?

Spring Boot和Angular Cli之间的交叉原点是如何工作的?,angular,spring,spring-boot,Angular,Spring,Spring Boot,我正在学习这个教程 当我运行我的应用程序时,出现以下错误: CORS策略已阻止从源“”访问“”处的XMLHttpRequest:请求的资源上不存在“访问控制允许源”标头 关于交叉原点,我提出了不同的问题,但我不知道确切的插入位置和插入内容,因为在教程中从未显示或使用过它。您可以添加proxy.config.json 然后使用以下命令运行: directory\angular> ng serve --proxy-config proxy.config.json 交叉原点与前端无关。您所需要

我正在学习这个教程

当我运行我的应用程序时,出现以下错误:

CORS策略已阻止从源“”访问“”处的XMLHttpRequest:请求的资源上不存在“访问控制允许源”标头

关于交叉原点,我提出了不同的问题,但我不知道确切的插入位置和插入内容,因为在教程中从未显示或使用过它。

您可以添加proxy.config.json

然后使用以下命令运行:

directory\angular> ng serve --proxy-config proxy.config.json

交叉原点与前端无关。您所需要做的就是允许前端的URL位于后端。通常我们在后端编写CORS过滤器,并允许前端url在其中


按照本教程进行更新

我在服务器端(Spring)创建了一个带有@Configuration注释的类:

在Tomcat`web.xml`文件中设置这些COR。 ` 克斯菲尔特 org.apache.catalina.filters.CorsFilter 克斯菲尔特 /* `
添加一些实现,它与
directory\angular> ng serve --proxy-config proxy.config.json
package it.si2001.SpringBootJPACRUDExample.configuration;

import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@Configuration
public class CORSConfiguration implements WebMvcConfigurer {
    @Override
    public void addCorsMappings(CorsRegistry registry) {
        registry.addMapping("/**").allowedHeaders("*")
                .allowedMethods("GET", "POST", "DELETE");
    }
}//close class
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;

@Configuration
public class CORSConfiguration  {

   @SuppressWarnings("deprecation")
    @Bean
        public WebMvcConfigurer corsConfigurer()
        {
            return new WebMvcConfigurerAdapter() {
                @Override
                public void addCorsMappings(CorsRegistry registry) {
                    registry.addMapping("/**").allowedMethods("GET", "PUT", "POST", "DELETE", "OPTIONS");
                }    
            };
        }
}
In Tomcat `web.xml` file set these cors.
`<filter>
    <filter - name> CorsFilter </filter-name> 
    <filter - class> org.apache.catalina.filters.CorsFilter </filter-class> 
</filter>
<filter - mapping>
    <filter - name> CorsFilter </filter-name>
    <url - pattern>/*</url-pattern>
</filter-mapping>`