欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SpringBoot服務(wù)器端解決跨域問題

 更新時間:2020年11月10日 10:37:25   作者:DayRain  
這篇文章主要介紹了SpringBoot服務(wù)器端解決跨域問題,幫助大家更好的理解和使用springboot框架,感興趣的朋友可以了解下

本文導(dǎo)航

SpringBoot解決跨域問題的兩種方案:

1、通過給方法或者類加注解的形式,@CrossOrigin。

2、繼承接口,重寫addCorsMappings方法。

第一種方式:

@RestController
@CrossOrigin("http://localhost:8081")
public class BaseController {

 @GetMapping("/hello")
 public String testGet(){

  return "get";
 }

 @PutMapping("/doPut")
 public String testPut(){
  return "put";
 }
}

指定請求來源,可以寫成“*”,表示接收所有來源的請求。

第二種方式:

@Configuration
public class WebMvcConfig implements WebMvcConfigurer {

 @Override
 public void addCorsMappings(CorsRegistry registry) {
  registry.addMapping("/**").allowedOrigins("http://localhost:8081")
    .allowedHeaders("*")
    .allowedMethods("*")
    .maxAge(30*1000);
 }
}

allowOrigins也可以寫成allowedOrigins(" * "),表示接收所有來源的請求。

注意點:

1、路徑來源的寫法問題

如果后臺指定路徑來源為:http://localhost:8081

那么在瀏覽器里訪問前端頁面的時候,必須用 http://localhost:8081,不可以寫成127.0.0.1或者本機ip地址。否則還是會報跨域錯誤。測試如下

后臺設(shè)置:

 @Override
 public void addCorsMappings(CorsRegistry registry) {
  registry.addMapping("/**").allowedOrigins("http://localhost:8081")
    .allowedHeaders("*")
    .allowedMethods("*")
    .maxAge(30*1000);
 }

前端請求:

<script>
    doGet = function () {
        $.get('http://localhost:8080/hello', function (msg) {
            $("#app").html(msg);
        });
    }
 
    doPut = function () {
        $.ajax({
            type:'put',
            url:'http://localhost:8080/doPut',
            success:function (msg) {
                $("#app").html(msg);
            }
        })
    }
</script>

啟動服務(wù),瀏覽器里訪問:

http://localhost:8081/index.html

正常返回結(jié)果

瀏覽器里訪問:

http://127.0.0.1:8081/index.html

報跨域錯誤如下:

所以說,瀏覽器訪問路徑需要與后臺allowOrigin里設(shè)置的參數(shù)一致。

那如果代碼里的訪問路徑可以不一樣嗎,比如:

 doGet = function () {
  $.get('http://127.0.0.1:8080/hello', function (msg) { //本機ip地址
   $("#app").html(msg);
  });
 }

 doPut = function () {
  $.ajax({
   type:'put',
   url:'http://192.168.1.26:8080/doPut',
   success:function (msg) {
    $("#app").html(msg);
   }
  })
 }

經(jīng)過測試,是可以的,只要瀏覽器里訪問頁面的路徑寫法與后臺保持一致就可以了。

2、攜帶Cookie

有時候,前端調(diào)用后端接口的時候,必須要攜帶cookie(比如后端用session認證),這個時候,就不能簡單的使用allowOrigins("*")了,必須要指定具體的ip地址,否則也會報錯。

以上就是SpringBoot服務(wù)器端解決跨域問題的詳細內(nèi)容,更多關(guān)于SpringBoot 解決跨域的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • JavaSE的三大接口:Comparator,Comparable和Cloneable詳解

    JavaSE的三大接口:Comparator,Comparable和Cloneable詳解

    這篇文章主要介紹了詳解JavaSE中Comparator,Comparable和Cloneable接口的區(qū)別的相關(guān)資料,希望通過本文大家能徹底掌握這部分內(nèi)容,需要的朋友可以參考下
    2021-10-10
  • CompletableFuture?異步編排示例詳解

    CompletableFuture?異步編排示例詳解

    這篇文章主要為大家介紹了CompletableFuture?異步編排示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-09-09
  • php上傳文件分類實例代碼

    php上傳文件分類實例代碼

    這篇文章主要介紹了php上傳文件分類實例代碼,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-02-02
  • JavaWeb倉庫管理系統(tǒng)詳解

    JavaWeb倉庫管理系統(tǒng)詳解

    這篇文章主要為大家詳細介紹了JavaWeb倉庫管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • Springmvc文件上傳實現(xiàn)流程解析

    Springmvc文件上傳實現(xiàn)流程解析

    這篇文章主要介紹了Springmvc文件上傳實現(xiàn)流程解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習或者工作具有一定的參考學(xué)習價值,需要的朋友可以參考下
    2020-09-09
  • Java String字符串補0或空格的實現(xiàn)代碼

    Java String字符串補0或空格的實現(xiàn)代碼

    這篇文章主要介紹了Java String字符串補0或空格的實現(xiàn)代碼,代碼簡單易懂,非常不錯,具有參考借鑒價值,感興趣的朋友一起看看吧
    2016-09-09
  • SpringBoot整個啟動過程的分析

    SpringBoot整個啟動過程的分析

    今天小編就為大家分享一篇關(guān)于SpringBoot整個啟動過程的分析,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-03-03
  • Java基礎(chǔ)之自動裝箱,注解操作示例

    Java基礎(chǔ)之自動裝箱,注解操作示例

    這篇文章主要介紹了Java基礎(chǔ)之自動裝箱,注解操作,結(jié)合實例形式分析了java拆箱、裝箱、靜態(tài)導(dǎo)入、注釋等相關(guān)使用技巧,需要的朋友可以參考下
    2019-08-08
  • Java GUI進階之流式布局管理器FlowLayout專項精講

    Java GUI進階之流式布局管理器FlowLayout專項精講

    FlowLayout-流式布局管理器,按水平方向依次排列放置組件,排滿一行,換下一行繼續(xù)排列。排列方向(左到右 或 右到左)取決于容器的componentOrientation屬性
    2022-04-04
  • 詳解SSM框架下結(jié)合log4j、slf4j打印日志

    詳解SSM框架下結(jié)合log4j、slf4j打印日志

    本篇文章主要介紹了詳解SSM框架下結(jié)合log4j、slf4j打印日志,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-11-11

最新評論