依赖
<dependency>
<groupId>com.thetransactioncompany</groupId>
<artifactId>java-property-utils</artifactId>
<version>${java-property-utils.version}</version>
</dependency>
<dependency>
<groupId>com.thetransactioncompany</groupId>
<artifactId>cors-filter</artifactId>
<version>${cors-filter.version}</version>
</dependency>
配置文件
cors.allowOrigin=http://127.0.0.1:28080
cors.supportedMethods=GET, POST
#cors.supportedHeaders=Accept, Origin, X-Requested-With, Content-Type, Last-Modified
cors.supportedHeaders=Origin, X-Requested-With, Content-Type, Accept, WG-App-Version, WG-Device-Id, WG-Network-Type, \
WG-Vendor, WG-OS-Type, WG-OS-Version, WG-Device-Model, WG-CPU, WG-Sid, WG-App-Id, WG-Token
cors.exposedHeaders=Set-Cookie
cors.supportsCredentials=true
配置类
package com.jsong.wiki.backend.config;
import com.thetransactioncompany.cors.CORSConfiguration;
import com.thetransactioncompany.cors.CORSConfigurationException;
import com.thetransactioncompany.cors.CORSFilter;
import lombok.extern.log4j.Log4j2;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.io.ClassPathResource;
import org.springframework.core.io.support.PropertiesLoaderUtils;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.Properties;
@Configuration
@Log4j2
public class CorsFilterConfig {
@Bean
public CORSFilter corsFilter() {
log.info("-----------------corsFilter start-------------------");
CORSFilter corsFilter = new CORSFilter();
try {
Properties properties= PropertiesLoaderUtils.loadProperties(new ClassPathResource("application.properties"));
CORSConfiguration corsConfiguration = new CORSConfiguration(properties);
corsFilter.setConfiguration(corsConfiguration);
log.info("-----------------corsFilter-------------------");
return corsFilter;
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (CORSConfigurationException e) {
e.printStackTrace();
}
return null;
}
}