跨域
瀏覽器同源策略 1995年,同源政策由 Netscape 公司引入瀏覽器。目前,所有瀏覽器都實行
這個政策。 最初,它的含義是指,A網(wǎng)頁設(shè)置的 Cookie,B網(wǎng)頁不能打開,除非這兩個網(wǎng)
頁"同源"。所謂"同源"指的是"三個相同"。
協(xié)議相同 http https
域名相同 www.xdclass.net
端口相同 80 81
一句話:瀏覽器從一個域名的網(wǎng)頁去請求另一個域名的資源時,域名、端口、協(xié)議任一不同,都是跨域
瀏覽器控制臺跨域提示:
No 'Access-Control-Allow-Origin' header is present on the requested resource.
Origin 'null' is therefore not allowed access.
解決方法
- JSONP
- 頁面這層再包裝一層服務(wù),目前最多就是nodejs
- Http響應(yīng)頭配置允許跨域
nginx代理服務(wù)器
后端程序代碼配置
程序代碼中處理 SpringBoot 通過攔截器配置
//表示接受任意域名的請求,也可以指定域名
response.setHeader("Access-Control-Allow-Origin",
request.getHeader("origin"));
//該字段可選,是個布爾值,表示是否可以攜帶cookie
response.setHeader("Access-Control-Allow-Credentials", "true");
response.setHeader("Access-Control-Allow-Methods", "GET, HEAD, POST,
PUT, PATCH, DELETE, OPTIONS");
response.setHeader("Access-Control-Allow-Headers", "*");