為什麼 Postman 在 JavaScript 中不會出現“請求的資源上不存在 'Access-Control-Allow-Origin' 標頭”錯誤?
問題
當我們嘗試向一個與我們當前 URL(我們從中發出請求的 URL)來源不同的遠端伺服器發出網路請求時,我們很可能會由於 Web 中的不同來源問題而遇到 CORS 錯誤,而當使用 Postman 等工具時,我們可以成功避免此 CORS 錯誤。
我們需要解釋透過 Web 請求和透過 Postman 等擴充套件程式請求時響應行為的差異。
解釋
當我們使用 Web 瀏覽器向與頁面所在域不同的域發出網路請求時,它會阻止該請求,甚至都不會通知或聯絡伺服器,並且通常出於安全原因允許在同一來源中發出請求。
但是,當我們使用 Postman 或任何此類工具時,它們不受此策略的限制。網頁可以使用 XMLHttpRequest 物件從遠端伺服器傳送和接收資料,但它們受同源策略的限制,但像 Postman 這樣的擴充套件程式不受此限制。擴充套件程式可以與其來源之外的遠端伺服器通訊,這就是 Postman 成功發出請求而網頁由於 CORS 錯誤而失敗的原因。
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP