springboot 支持跨域

版权声明:本文为博主原创文章,未经允许不得转发 https://blog.csdn.net/fengchen0123456789/article/details/86639159

一般 ajax 请求就存在跨域问题,常用的几种解决方式

  1. jsonp 但只支持get,不支持post
  2. 添加 header 请求头允许访问
  3. httpclient 内部转发
  4. springcloud zuul 网关
  5. nginx

LZ这里只是简单的和springboot对接一下

import org.springframework.context.annotation.Bean
import org.springframework.context.annotation.Configuration
import org.springframework.web.cors.CorsConfiguration
import org.springframework.web.cors.UrlBasedCorsConfigurationSource
import org.springframework.web.filter.CorsFilter

@Configuration
class CorsConfig {

    fun init(): CorsConfiguration {

        var cros = CorsConfiguration()
        
        cros.addAllowedOrigin("*")     // 允许的域名
        cros.addAllowedHeader("*")  // 允许的请求头
        cros.addAllowedMethod("*")  // 允许请求方式方法(post、get..)

        return cros
    }

    @Bean
    fun filter(): CorsFilter {

        var source = UrlBasedCorsConfigurationSource()

        source.registerCorsConfiguration("/**", init())

        return CorsFilter(source)

    }

}

猜你喜欢

转载自blog.csdn.net/fengchen0123456789/article/details/86639159