摘要:一同源策略用戶瀏覽網(wǎng)站時難免需要將一些經(jīng)常用到的信息,緩存在本地以提升交互體驗,避免一些多余的操作。無法獲得請求不能發(fā)送同源策略是必要的,但這些限制有時也會對一些合理的使用帶來不便,這便引出了跨域通信的需求。
一、同源策略
用戶瀏覽網(wǎng)站時難免需要將一些經(jīng)常用到的信息,緩存在本地以提升交互體驗,避免一些多余的操作。那么這些信息中難免有些就會涉及用戶的隱私,怎么保證用戶的信息不在多個站點之間共享,以達到可用的最小范圍,這邊引出了瀏覽器的同源策略。那么...
什么是同源策略?
同時滿足以下三個條件的網(wǎng)頁稱為同源:
協(xié)議相同
域名相同
端口相同
非同源的網(wǎng)頁將受到以下限制:
Cookie、LocalStorage 和 IndexDB 無法讀取。
DOM 無法獲得
AJAX 請求不能發(fā)送
同源策略是必要的,但這些限制有時也會對一些合理的使用帶來不便,這便引出了跨域通信的需求。
二、跨域通信常見的跨域通信方式有如下集中:
JSONP
Hash
Postmessage
WebSocket
CORS
2.1 JSONPJSONP的原理是,首先客戶端動態(tài)添加一個