国产成人精品亚洲777人妖,欧美日韩精品一区视频,最新亚洲国产,国产乱码精品一区二区亚洲

您的位置:首頁技術文章
文章詳情頁

Spring Boot如何通過CORS處理跨域問題

瀏覽:2日期:2023-09-11 16:18:01

跨域的產生就是因為瀏覽器的同源策略。它是瀏覽器的核心安全功能,所謂的同源,就是指域名,協(xié)議,還有端口要相同。傳統(tǒng)的方案就是JSONP(前端處理方案),但是JSONP有很大的局限性,就是只支持GET請求,所以不能滿足我們的需求,而CORS(Cross-origin-resource sharing)跨域資源共享,就可以解決這個問題。他是一個瀏覽器規(guī)范,一個w3c標準,提供web服務從不同網域傳來的沙盒腳本的方法,避開了瀏覽器的同源策略。

CORS是后端的一種處理的方案,在Spring中可以配置解決跨域,在Spring Boot中它的配置變得很簡單,只需要在你controller方法上加一個注解@CrossOrigin(origins='你的請求地址')就好了。

跨域資源共享(CORS) 是一種機制,它使用額外的 HTTP 頭來告訴瀏覽器 讓運行在一個 origin (domain) 上的Web應用被準許訪問來自不同源服務器上的指定的資源。當一個資源從與該資源本身所在的服務器不同的域、協(xié)議或端口請求一個資源時,資源會發(fā)起一個跨域 HTTP 請求。

比如,站點 http://domain-a.com 的某 HTML 頁面通過 <img> 的 src 請求 http://domain-b.com/image.jpg。網絡上的許多頁面都會加載來自不同域的CSS樣式表,圖像和腳本等資源。

出于安全原因,瀏覽器限制從腳本內發(fā)起的跨源HTTP請求。 例如,XMLHttpRequest和Fetch API遵循同源策略。 這意味著使用這些API的Web應用程序只能從加載應用程序的同一個域請求HTTP資源,除非響應報文包含了正確CORS響應頭。

如果方法百十來個,那這種的就不適用,因此可以做一個全局配置,統(tǒng)一處理

@Configuration//ctrl+o找一下這個方法public class WebMVcConfig implements WebMvcConfigurer { @Override public void addCorsMappings(CorsRegistry registry) { registry.addMapping('**').allowedOrigins('http://localhost:8081') .allowedHeaders('*') .allowedMethods('*') .maxAge(30*1000); }}

后端代碼處理的話就是這樣,但是還有其他方法,例如nginx,例如node.js,都可以處理,但是這兩個第三方工具的用處很多,如果僅僅局限在處理跨域,那就有點大材小用。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Spring
相關文章:
主站蜘蛛池模板: 铜山县| 施甸县| 石嘴山市| 南乐县| 包头市| 仁布县| 寻乌县| 北辰区| 岳池县| 阳谷县| 盖州市| 慈溪市| 黄大仙区| 沂源县| 临沭县| 北京市| 于都县| 巴塘县| 张家川| 永靖县| 谢通门县| 肇东市| 柏乡县| 祁连县| 临颍县| 安阳县| 肇州县| 甘德县| 如皋市| 望谟县| 绥化市| 唐山市| 始兴县| 万州区| 成安县| 图片| 台南县| 潮安县| 长岭县| 柯坪县| 盈江县|