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

springboot中如何通過cors協(xié)議解決跨域問題

 更新時間:2018年05月18日 09:37:12   作者:liben0429  
這篇文章主要介紹了springboot中通過cors協(xié)議解決跨域問題,cors是一個w3c標(biāo)準(zhǔn),它允許瀏覽器(目前ie8以下還不能被支持)像我們不同源的服務(wù)器發(fā)出xmlHttpRequest請求,我們可以繼續(xù)使用ajax進行請求訪問。具體內(nèi)容詳情大家跟隨腳本之家小編一起學(xué)習(xí)吧

1、對于前后端分離的項目來說,如果前端項目與后端項目部署在兩個不同的域下,那么勢必會引起跨域問題的出現(xiàn)。

針對跨域問題,我們可能第一個想到的解決方案就是jsonp,并且以前處理跨域問題我基本也是這么處理。

但是jsonp方式也同樣有不足,不管是對于前端還是后端來說,寫法與我們平常的ajax寫法不同,同樣后端也需要作出相應(yīng)的更改。并且,jsonp方式只能通過get請求方式來傳遞參數(shù),當(dāng)然也還有其它的不足之處,針對于此,我并沒有急著使用jsonp的方式來解決跨域問題,去網(wǎng)上找尋其它方式,也就是本文主要所要講的,在springboot中通過cors協(xié)議解決跨域問題。

2、Cors協(xié)議

H5中的新特性:Cross-Origin Resource Sharing(跨域資源共享)。通過它,我們的開發(fā)者(主要指后端開發(fā)者)可以決定資源是否能被跨域訪問。

cors是一個w3c標(biāo)準(zhǔn),它允許瀏覽器(目前ie8以下還不能被支持)像我們不同源的服務(wù)器發(fā)出xmlHttpRequest請求,我們可以繼續(xù)使用ajax進行請求訪問。

具體關(guān)于cors協(xié)議的文章 ,可以參考http://www.dbjr.com.cn/article/83093.htm 這篇文章,講的相當(dāng)不錯。

3、在springboot中如何通過cors協(xié)議解決跨域問題

springmvc4.2版本增加了對cors的支持。

目前我所做的項目基本都是springboot進行開發(fā),所以我這里貼下在springboot中的使用。

@Configuration
public class MyWebAppConfigurer extends WebMvcConfigurerAdapter{
 @Override
 public void addCorsMappings(CorsRegistry registry) {
  registry.addMapping("/**");
 }

可以在addMapping中配置我們的路徑。/**代表所有路徑。

當(dāng)然也可以修改其它屬性

@Configuration
public class MyWebAppConfigurer extends WebMvcConfigurerAdapter{
 @Override
 public void addCorsMappings(CorsRegistry registry) {
   registry.addMapping("/api/**")
   .allowedOrigins("http://192.168.1.97")
   .allowedMethods("GET", "POST")
   .allowCredentials(false).maxAge(3600);
 }

以上兩種,都是針對全局配置,如果你想做到更細致也可以使用@CrossOrigin這個注解在controller類中使用。

@CrossOrigin(origins = "http://192.168.1.97:8080", maxAge = 3600)
@RequestMapping("rest_index")
@RestController
public class IndexController{

這樣就可以指定該controller中所有方法都能處理來自http:19.168.1.97:8080中的請求。

總結(jié)

以上所述是小編給大家介紹的springboot中如何通過cors協(xié)議解決跨域問題,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!

相關(guān)文章

  • 詳解Java拋出和聲明異常的代碼實現(xiàn)

    詳解Java拋出和聲明異常的代碼實現(xiàn)

    我們在編寫代碼時,有時候因為某些原因,并不想在這個方法中立即處理產(chǎn)生的異常,也就是說并不想進行異常的捕獲,接下來小編就來教會大家該如何進行異常的拋出,需要的朋友可以參考下
    2023-08-08
  • java實現(xiàn)圖書管理系統(tǒng)

    java實現(xiàn)圖書管理系統(tǒng)

    這篇文章主要為大家詳細介紹了java實現(xiàn)圖書管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-03-03
  • 關(guān)于Java的HashMap多線程并發(fā)問題分析

    關(guān)于Java的HashMap多線程并發(fā)問題分析

    HashMap是采用鏈表解決Hash沖突,因為是鏈表結(jié)構(gòu),那么就很容易形成閉合的鏈路,這樣在循環(huán)的時候只要有線程對這個HashMap進行g(shù)et操作就會產(chǎn)生死循環(huán),本文針對這個問題進行分析,需要的朋友可以參考下
    2023-05-05
  • java中Servlet程序下載文件實例詳解

    java中Servlet程序下載文件實例詳解

    在本篇文章里小編給大家整理的是一篇關(guān)于java中Servlet程序下載文件實例內(nèi)容,有興趣的朋友們可以學(xué)習(xí)參考下。
    2021-02-02
  • Spring5新功能日志框架Log4j2整合示例

    Spring5新功能日志框架Log4j2整合示例

    這篇文章主要為大家介紹了Spring5新功能之日志框架Log4j2的整合示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-05-05
  • Java中關(guān)于OAuth2.0的原理分析

    Java中關(guān)于OAuth2.0的原理分析

    這篇文章主要介紹了Java中關(guān)于OAuth2.0的原理分析,OAuth是一個關(guān)于授權(quán)的開放網(wǎng)絡(luò)標(biāo)準(zhǔn),允許用戶授權(quán)第三 方應(yīng)用訪問他們存儲在另外的服務(wù)提供者上的信息,而不需要將用戶名和密碼提供給第三方移動應(yīng)用或分享他們數(shù)據(jù)的所有內(nèi)容,需要的朋友可以參考下
    2023-09-09
  • MyBatis 實現(xiàn)批量插入和刪除中雙層循環(huán)的寫法案例

    MyBatis 實現(xiàn)批量插入和刪除中雙層循環(huán)的寫法案例

    這篇文章主要介紹了MyBatis 實現(xiàn)批量插入和刪除中雙層循環(huán)的寫法案例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-01-01
  • Scala異常處理的方法深入分析

    Scala異常處理的方法深入分析

    Scala是一種多范式的編程語言,支持面向?qū)ο蠛秃瘮?shù)式編程。Scala也支持異常處理,即在程序運行過程中發(fā)生意外或錯誤時,采取相應(yīng)的措施
    2023-04-04
  • Java binarysearch方法原理詳解

    Java binarysearch方法原理詳解

    這篇文章主要介紹了Java binarysearch方法原理詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-01-01
  • 自定義Jackson的ObjectMapper如何實現(xiàn)@ResponseBody的自定義渲染

    自定義Jackson的ObjectMapper如何實現(xiàn)@ResponseBody的自定義渲染

    這篇文章主要介紹了自定義Jackson的ObjectMapper如何實現(xiàn)@ResponseBody的自定義渲染,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-07-07

最新評論