Springboot跨域配置+前端动态获得域名

来源:互联网 发布:100万网络电影预算表 编辑:程序博客网 时间:2024/06/04 19:57

前端:

function test(){    var k_host = window.location.host;    var k_port = window.location.port;    var k_protocol = window.location.protocol;    var k_url = k_protocol+"//"+k_host+ "/user/login";    $.ajax({        type:"POST",        url:k_url,        data:"abc",        datatype: "json",//"xml", "html", "script", "json", "jsonp", "text".        success:function(data){            console.log(data);            console.log(data.code)        }    });}
后端:

package com.example.demo.debug.config;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;import org.springframework.web.socket.server.standard.ServerEndpointExporter;@Configurationpublic class WebSocketConfig {    private CorsConfiguration buildConfig() {        CorsConfiguration corsConfiguration = new CorsConfiguration();        corsConfiguration.addAllowedOrigin("*"); // 1        corsConfiguration.addAllowedHeader("*"); // 2        corsConfiguration.addAllowedMethod("*"); // 3        return corsConfiguration;    }    @Bean    public CorsFilter corsFilter() {        UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();        source.registerCorsConfiguration("/**", buildConfig()); // 4        return new CorsFilter(source);    }    @Bean    public ServerEndpointExporter serverEndpointExporter() {        return new ServerEndpointExporter();    }}