国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - 淺談spring-boot 允許接口跨域并實現攔截(CORS)

淺談spring-boot 允許接口跨域并實現攔截(CORS)

2020-12-18 11:58bluecrop Java教程

本篇文章主要介紹了淺談spring-boot 允許接口跨域并實現攔截(CORS),具有一定的參考價值,有興趣的可以了解一下

本文介紹了spring-boot 允許接口跨域并實現攔截(CORS),分享給大家,也給自己留個筆記

pom.xml(依賴的jar)

?
1
2
3
4
5
// 在spring-boot-starter-web的啟動器中,已經依賴好了
<dependency>
      <groupId>org.springframework.boot</groupId>
      <artifactId>spring-boot-starter-web</artifactId>
</dependency>

CORS跨域的配置(主要配置允許什么樣的方法跨域)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
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.servlet.config.annotation.CorsRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
import java.util.ArrayList;
import java.util.List;
/**
 * Created by Msater Zg on 2017/4/3.
 */
@Configuration
public class CorsConfig extends WebMvcConfigurerAdapter {
  @Override
  public void addCorsMappings(CorsRegistry registry) {
    registry.addMapping("/**")
        .allowedOrigins("*")
        .allowCredentials(true)
        .allowedMethods("GET", "POST", "DELETE", "PUT")
        .maxAge(3600);
  }
  private CorsConfiguration buildConfig() {
    CorsConfiguration corsConfiguration = new CorsConfiguration();
    List<String> list = new ArrayList<>();
    list.add("*");
    corsConfiguration.setAllowedOrigins(list);
    /*
    // 請求常用的三種配置,*代表允許所有,當時你也可以自定義屬性(比如header只能帶什么,只能是post方式等等)
    */
    corsConfiguration.addAllowedOrigin("*");
    corsConfiguration.addAllowedHeader("*");
    corsConfiguration.addAllowedMethod("*");
    return corsConfiguration;
  }
  @Bean
  public CorsFilter corsFilter() {
    UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
    source.registerCorsConfiguration("/**", buildConfig());
    return new CorsFilter(source);
  }
}

攔截器配置(可以根據不同路徑,配置不同的攔截器)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
/**
 * Created by Msater Zg on 2017/4/5.
 * 攔截器
 */
public class ApiInterceptor implements HandlerInterceptor {
  @Override
  public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
    // 請求前調用
    System.out.println("攔截了");
    return true;
  }
  @Override
  public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
    // 請求過程中調用
    System.out.println("攔截了");
  }
  @Override
  public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
    // 請求完成時調用
    System.out.println("攔截了");
  }
}

攔截器管理類,用于生成項目的攔截器鏈

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;
/**
 * Created by Msater Zg on 2017/4/5.
 * 攔截器管理工具
 */
@Configuration
public class MyWebAppConfigurer extends WebMvcConfigurerAdapter {
  @Override
  public void addInterceptors(InterceptorRegistry registry) {
    // 多個攔截器組成一個攔截器鏈
    // addPathPatterns 用于添加攔截規則
    // excludePathPatterns 用戶排除攔截
    registry.addInterceptor(new ApiInterceptor()).addPathPatterns("/user/**"); //對來自/user/** 這個鏈接來的請求進行攔截
    super.addInterceptors(registry);
  }
}

結語

實現跨域的方式有很多,這只是其中一種。有什么不對的地方希望能及時指出。謝謝!

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。

原文鏈接:http://www.jianshu.com/p/db0d8d45c242?utm_source=tuicool&utm_medium=referral

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 国产精品高潮呻吟久久av野狼 | 欧美成人综合 | 91精品一区二区三区久久久久久 | 亚洲综合区| 亚洲啊v| 亚洲自拍另类 | 久久99精品久久久久久国产越南 | 欧美视频一区二区三区 | 欧美精品一二三区 | 亚洲视频在线播放 | 国产高清精品在线 | 亚洲电影天堂在线观看 | 日韩在线播放一区二区三区 | 精品国产91亚洲一区二区三区www | 久久久99久久久国产自输拍 | 欧美日韩视频在线 | 亚洲精品大片 | 日韩一区二区在线观看 | 国产精品毛片在线 | 国产精品免费久久 | 久久91精品 | 久草福利在线视频 | 精品国产一区二区三区av性色 | 久久精选 | 日韩欧美一区二区三区 | 亚洲成人精品一区 | 欧美激情视频一区二区三区不卡 | 免费av片网站| 欧美黄色a视频 | 国产在线观看二区 | 日韩精品视频在线播放 | av网址aaa | 精品国产一区二区三区日日嗨 | 亚洲va中文字幕 | 天天玩天天操天天射 | 在线看国产 | 国产精品久久久久国产a级 国产免费久久 | 天天操一操 | 玖玖国产 | 欧洲一级视频 | 久久久一区二区 |