web開發跨域原因的多種解決方案
跨域原因
是由於瀏覽器的同源策略限制;
跨域指: 當一個請求url的協議、域名、端口三者之間任意一個與當前頁面url不同即為跨域
JSONP
這種方式並不適用於開發, 可以說是被完全淘汰, 但是由於實現復雜, 面試官對於這種方案的深究非常追崇.
核心思想: 網頁通過添加一個<script>標簽的src屬性,向服務器請求 JSON 數據,服務器收到請求後,將數據放在一個指定名字的回調函數的參數位置傳回來。
缺點: 需要後端配合才能完成隻能發送get請求
實現: 註意後端返回的是一個方法的調用和實參
Nginx解決
後端解決
在Controller層加註解:
@CrossOrigin(origins = “*”, allowedHeaders = “*”)
origins
: 允許來源域名的列表
allowedHeaders
: 跨域請求中允許的請求頭中的字段類型
以上就是web開發跨域原因的多種解決方案的詳細內容,更多關於web開發跨域解決的資料請關註WalkonNet其它相關文章!
推薦閱讀:
- JSONP跨域模擬百度搜索
- 基於SpringBoot解決CORS跨域的問題(@CrossOrigin)
- 關於後端如何解決跨域的問題說明
- 深入淺析同源與跨域,jsonp(函數封裝),CORS原理
- 解決SpringBoot跨域的三種方式