CORS是壹種用於在瀏覽器中處理跨域資源訪問的機制。
CORS是壹種用於在瀏覽器中處理跨域資源訪問的機制,當壹個網頁嘗試從壹個源請求獲取資源,而該資源的服務器與網頁所在的源不同時,就會涉及到跨域請求。
CORS通過在HTTP請求頭中添加壹些特定的字段信息來進行通信,以告知服務器是否支持跨域請求,通過這種方式,CORS機制使得網頁能夠在受限的情況下安全地進行跨域資源訪問。
在默認情況下,瀏覽器的同源策略會限制跨域請求,即只允許網頁從同壹域名下獲取數據。這是為了保護用戶的安全和隱私。但在某些情況下,我們希望網頁能夠跨域請求並獲取其他域名下的資源,這時就需要使用CORS來解決跨域問題。
模型分類:
1、簡單模型
支持get/post/put/delete請求,例如返回Access-Control-Allow-Origin:*,但是不允許自定義header且會忽略cookies,且post數據格式有限制,只支持text/plain,application/x-www-urlencoded and multipart/form-data,其中text/plain默認支持,後面兩種需要下面的預檢請求和服務器協商。
2、協商模型/預檢請求
舉例:瀏覽器發出PUT請求,OPTION請求返回Access-Control-Allow-Origin:*,Access-Control-Allow-Methods:“PUT”,服務器同意所有域的PUT請求,瀏覽器收到並繼續發出真正的PUT請求,服務器響應並再次返回Access-Control-Allow-Origin:*,允許瀏覽器的腳本執行服務器返回的數據。
以上內容參考:百度百科-CORS