北京建站推廣全網(wǎng)推廣公司
1.什么是跨域?
瀏覽器從一個域名的網(wǎng)頁去請求另外一個域名的資源時,域名、端口或者協(xié)議不同都是跨域
2.跨域的解決方案
- 設置CORS響應頭∶后端可以在HTTP響應頭中添加相關(guān)的CORS標頭,允許特定的源(域名、協(xié)議、端口)訪問資源。Spring Boot項目中,可以通過配置CorsFilter Bean或者Web攔截器(實現(xiàn)WebMvcConfigurer接口)實現(xiàn),不依賴第三方服務
- 使用代理服務器:可以使用Nginx反向代理,通過add_header給后端響應添加Access-Control-Allow-Origin頭,不改代碼實現(xiàn)跨域。
- @CrossOrigin注解?:Spring Boot項目可以直接在對應的Controller或接口方法上添加@CrossOrigin注解實現(xiàn)跨域,但這種方式對代碼的侵入性較大。
一般我會選用第二種方式,不需要考慮特定的后端接口實現(xiàn)代碼,是一種更通用的解決跨域的方法。