跨域指訪問乙個不同網域名稱或埠的伺服器的資源,會被瀏覽器的安全策略攔截瀏覽器的同源策略。
使用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...