溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

cors和ajax的區別有哪些

發布時間:2022-07-02 09:59:11 來源:億速云 閱讀:192 作者:iii 欄目:web開發

這篇文章主要講解了“cors和ajax的區別有哪些”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“cors和ajax的區別有哪些”吧!

cors和ajax的區別是:cors請求時會在HTTP請求頭header中添加幾個關鍵字,用于表示當前請求時跨域請求,而ajax請求時不會添加這些關鍵字;cors是“Cross-origin resource sharing”的縮寫,表示跨域資源共享。

本文操作環境:windows10系統、javascript1.8.5&&html5版、Dell G3電腦。

CORS 和 Ajax 區別:

CORS 和 Ajax 在發送請求時沒有任何區別,都是http請求,唯一區別就是 CORS 請求時,會在 http請求頭 header 中添加幾個關鍵詞,用來表示當前請求是跨域請求。

擴展知識:

CORS是一個W3C標準,全稱是"跨域資源共享"(Cross-origin resource sharing)。我們知道,用瀏覽器發送 http 請求(ajax)就存在跨域的問題,現在主流的解決跨域方案就是 CORS。

這里特別強調,我們經常說的跨域只是瀏覽器的限制,如果我們用腳本發送請求或者通過服務器請求,都不不會有跨域問題,這其中主要原因是瀏覽器使用門檻非常低,為了防止別有用心的人攻擊普通用戶,所以引入跨域策略

CORS簡介

CORS是 W3C 在2014年1月16日發布的一個正式推薦的通信標準,主要解決用戶代理的Web應用通過Ajax或者其他機制從另一個站點訪問資源、獲取數據的問題。

前提:服務端需要添加支持CORS的相關功能,即設定http的 Access-Control-Allow-Origin 允許的值

CORS的通信都由瀏覽器完成,不需要用戶參與。默認瀏覽都是通過Ajax通信,如果瀏覽器在發送請求時監測到當前請求跨域了,就會自動轉成CORS

CORS的兩種請求模式

瀏覽器將CORS請求分成兩類:簡單請求和非簡單請求

簡單請求就是使用設定的請求方式請求數據

非簡單請求則是在使用設定的請求方式請求數據之前,先發送一個OPTIONS請求,看服務端是否允許客戶端發送非簡單請求.只有"預檢"通過后才會再發送一次請求用于數據傳輸

只要同時滿足以下兩大條件,就屬于簡單請求。

條件一:

請求方法是以下三種方法之一:

HEAD

GET

POST

條件二:

HTTP的頭信息不超出以下幾種字段:

Accept
Accept-Language
Content-Language
Last-Event-ID
Content-Type:只限于三個值application/x-www-form-urlencoded、multipart/form-data、text/plain

簡單請求

簡單請求就是瀏覽器直接發送一個CORS請求(ajax請求)。發送之前,瀏覽器會給本次http請求添加一個請求頭 Origin

上面的頭信息中, Origin 字段用來說明,本次請求來自哪個源(協議 + 域名 + 端口)。服務器根據這個值,決定是否同意這次請求。

非簡單請求

非簡單請求就是再發送請求前先發送一個 OPTIONS 請求,提前檢測一下請求是否被允許,主要目的是為了防止跨域請求對后臺數據的破壞或盜取,簡單請求安全性較低,服務器是處理了請求后再返回數據,非簡單請求模式下,服務器在提前檢測時不應該處理請求。

感謝各位的閱讀,以上就是“cors和ajax的區別有哪些”的內容了,經過本文的學習后,相信大家對cors和ajax的區別有哪些這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女