解決Vue調用springboot接口403跨域問題

最近在作一個先後端分離的項目, 前端用的是Vue後端使用的是springboot, 在項目整合的時候發現前端調用後端接口報錯403跨域請求問題前端

前端跨域請求已解決, 那麼問題就出在後端了, 找了一些資料找到了不少種方法, 這裏說兩個簡單粗暴的.java

注意:「@CrossOrigin「註解要求jdk1.8及以上版本, SpringMVC 4.2及以上版本web

1. 在controller層上添加@Configuration註解, 若是沒有效果請指定RequestMapping中的method類型在試一下.(此註解也能夠加在方法上)spring

@RestController
public
class Demo { @Configuration @RequestMapping("test) public String test() { // 這裏是代碼 } }
@Configuration
@RestController
public class Demo { @RequestMapping("test) public String test() { // 這裏是代碼 } }

 

2. 上面的方法解決的是部分功能的跨域問題, 有的時候咱們須要全局跨域, 那麼能夠配置一個config類, 新建一個java文件, 代碼以下後端

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

@SuppressWarnings("deprecation")
@Configuration
public class MyConfiguration {

    @Bean
    public WebMvcConfigurer corsConfigurer() {
        return new WebMvcConfigurerAdapter() {
            @Override
            public void addCorsMappings(CorsRegistry registry) {
                registry.addMapping("/**");
            }
        };
    }
}

OK, 問題解決跨域

相關文章
相關標籤/搜索