摘要:什么是是異步的和面試題請使用原生來發(fā)送請求配置說明請求成功說明請求失敗同源策略如果你不是里的你就不能向這個域名發(fā)送任何請求只有協(xié)議端口域名一模一樣才允許發(fā)請求注意要一模一樣一模一樣一模一樣一模一樣可以向發(fā)送請求嗎不能要一模一樣才行可以向發(fā)送
什么是AJAX
是異步的JavaScript 和 XML
面試題:
請使用原生js來發(fā)送AJAX請求
let request = new XMLHttpRequest() request.open("get", "/xxx") // 配置request request.send() request.onreadystatechange = ()=>{ if(request.readyState === 4){ if(request.status >= 200 && request.status < 300){ console.log("說明請求成功") }else if(request.status >= 400){ console.log("說明請求失敗") } } }同源策略
如果你不是 xxxxx.com 里的js 你就不能向這個域名發(fā)送 任何ajax請求只有 協(xié)議+端口+域名 一模一樣才允許發(fā)ajax請求
【注意要】一模一樣 一模一樣 一模一樣 一模一樣
1、http://baidu.com 可以向 http://www.baidu.com 發(fā)送請求嗎 ???
不能?。。∫荒R粯硬判?/p>
2、http://baidu.com:80 可以向 http://baidu.com:81 發(fā)送 ajax 請求嗎???
不能?。。《丝诓灰粯?/p>
cors 跨域
cors 可以告訴瀏覽器 不需阻止
cross-origin resource sharing 跨站資源共享
非要響應(yīng)就在服務(wù)器寫: response.setHeader("Access-Control-Allow-Origin","xxxxxx 網(wǎng)址 xxxxxx")為什么要有同源策略?
因?yàn)樵撁嬗胒orm 提交到另一個域名之后,同源策略的本質(zhì)是:
原頁面的腳本無法獲取新頁面中的內(nèi)容
所以瀏覽器認(rèn)為是安全的而ajax是可以讀取響應(yīng)內(nèi)容的
因此瀏覽器不能允許你這樣做(請求已經(jīng)發(fā)出去了 只是沒有響應(yīng)而已)
一個域名的js
在未經(jīng)允許的情況下不得讀取另一個域名的內(nèi)容
但瀏覽器并不阻止你向另一個域名發(fā)送請求
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/109396.html
摘要:扯了這么多,自然不是為了吹水,而是要為了引出前端開發(fā)的一個重要的知識點(diǎn)同源策略什么是同源策略出于保護(hù)用戶信息安全的目的,現(xiàn)在的瀏覽器都會實(shí)施同源策略這個政策,所謂同源策略指的是不同源的客戶端腳本在沒有明確授權(quán)情況下,不允許讀寫對方的資源。 導(dǎo)語你家的小孩帶了他的朋友來你們的家里玩,你家的小孩如果要在自家屋里拿玩具玩、拿東西吃你自然是不會阻止,但是如果你家小孩的朋友人品不行,亂拿東西吃、...
摘要:扯了這么多,自然不是為了吹水,而是要為了引出前端開發(fā)的一個重要的知識點(diǎn)同源策略什么是同源策略出于保護(hù)用戶信息安全的目的,現(xiàn)在的瀏覽器都會實(shí)施同源策略這個政策,所謂同源策略指的是不同源的客戶端腳本在沒有明確授權(quán)情況下,不允許讀寫對方的資源。 導(dǎo)語你家的小孩帶了他的朋友來你們的家里玩,你家的小孩如果要在自家屋里拿玩具玩、拿東西吃你自然是不會阻止,但是如果你家小孩的朋友人品不行,亂拿東西吃、...
閱讀 1392·2021-09-22 10:02
閱讀 1922·2021-09-08 09:35
閱讀 4067·2021-08-12 13:29
閱讀 2612·2019-08-30 15:55
閱讀 2267·2019-08-30 15:53
閱讀 2307·2019-08-29 17:13
閱讀 2766·2019-08-29 16:31
閱讀 2959·2019-08-29 12:24