題目前端
- 手動編寫一個ajax,不依賴第三方庫
- 跨域的幾種實現方式
知識點ajax
![](http://static.javashuo.com/static/loading.gif)
以上是ajax的實現原理跨域
IE低版本使用ActiveXObject , 和W3C標準不同瀏覽器
readyState服務器
- 0--(未初始化) 尚未調用send()方法
- 1--(載入)已調用send()方法,正在發送請求
- 2--(載入完成)send()方法執行完成,已經接收到所有響應內容
- 3--(交互)正在解析響應內容
- 4--(完成)響應內容解析完成,能夠作客戶端調用了
status網站
- 2xx -- 表示成功處理請求。如200
- 3xx -- 須要重定向,瀏覽器直接跳轉
- 4xx -- 客戶端請求錯誤,如404
- 5xx -- 服務器端錯誤,如504
什麼是跨域spa
- 瀏覽器有同源策略,不容許ajax訪問其餘域接口
- 跨域條件:協議、域名、端口,有一個不一樣就算跨域
- 能夠跨域的三個標籤 <img src="xxx"> <link href="xxx"> <script src="xxx">
- <img>用於打點統計,統計網站多是其餘域
- <link><script>能夠使用CDN
- <script>能夠用於JSONP
- 全部的跨域請求都必須通過信息提供方容許
- 若是未經容許便可獲取,那是瀏覽器同源策略出現漏洞
JSONP(前端)3d
![](http://static.javashuo.com/static/loading.gif)
![](http://static.javashuo.com/static/loading.gif)
![](http://static.javashuo.com/static/loading.gif)
服務器端設置 http headerblog