跨域的兩種解決JSONP CORS,演示例項

2021-09-25 09:54:10 字數 1548 閱讀 5040

跨域指訪問乙個不同網域名稱或埠的伺服器的資源,會被瀏覽器的安全策略攔截瀏覽器的同源策略。

使用jquery的jsonp進行訪問:原理解析:jquery的jsonp的原理解析

訪問端的**

跨域訪問jsonp
js**:

$("#visit").click(function () 

})})

js** 或者:(兩個方法都行)

$("#visit2").click(function () );

})

服務端的**:

@restcontroller

public class servercontroller );");

out.flush();

out.close();}}

jsonp方法的測試:

這個配置比較簡單方便,並且更加安全,只需在服務端配置即可,可選擇只允許指定的位址訪問、請求方式

訪問端**:(和正常的ajax請求一樣)

跨域訪問cors
$("#visit2").click(function () )

});

伺服器**:(新建乙個配置類)

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;

@configuration

public class globalcorsconfig

}

訪問介面還是那個介面不變測試cors方法:(因為訪問的同乙個介面,所以資料還是jsonp的資料)

兩個方法都能解決跨域的問題,個人覺得cors更好,支援各種請求方式,配置更簡單!!

SpringMVC解決跨域的兩種方案

跨域,即跨站http請求 cross site http request 指發起請求的資源所在域不同於請求指向資源所在域的http請求。當使用前後端分離,後端主導的開發方式進行前後端協作開發時,常常有如下情景 後端開發完畢在伺服器上進行部署並給前端api文件。前端在本地進行開發並向遠端伺服器上部署的...

SpringMVC解決跨域的兩種方案

跨域,即跨站http請求 cross site http request 指發起請求的資源所在域不同於請求指向資源所在域的http請求。當使用前後端分離,後端主導的開發方式進行前後端協作開發時,常常有如下情景 後端開發完畢在伺服器上進行部署並給前端api文件。前端在本地進行開發並向遠端伺服器上部署的...

跨域的兩種解決方案

方案一 configuration public class webmvcconfigure extends webmvcconfigureradapter 方案二 component public class jsonfilter implements filter override public...