判斷過程
瀏覽器先根據(jù)同源策略對前端頁面和后臺交互地址做匹配,若同源,則直接發(fā)送數(shù)據(jù)請求;若不同源,則發(fā)送跨域請求。
服務(wù)器解析程序收到瀏覽器跨域請求后,根據(jù)自身配置返回對應(yīng)文件頭。若未配置過任何允許跨域,則文件頭里不包含Access-Control-Allow-origin字段,若配置過域名,則返回Access-Control-Allow-origin+ 對應(yīng)配置規(guī)則里的域名的方式。
瀏覽器根據(jù)接受到的http文件頭里的Access-Control-Allow-origin字段做匹配,若無該字段,說明不允許跨域;若有該字段,則對字段內(nèi)容和當(dāng)前域名做比對,如果同源,則說明可以跨域,瀏覽器發(fā)送該請求;若不同源,則說明該域名不可跨域,不發(fā)送請求
Cookie 依然遵循“同源策略”,只有用目標服務(wù)器域名設(shè)置的 Cookie 才會上傳,而且使用 document.cookie 也無法讀取目標服務(wù)器域名下的 Cookie