簡體   English   中英

客戶端javascript:不允許使用CORS時,如何獲取HTTP請求的響應標頭?

[英]Client-side javascript: how can I get the response header of a HTTP request when CORS is not allowed?

在瀏覽器中,我正在執行HTTP請求。 reqUrl處的資源未啟用CORS,因此沒有響應主體。 但是,如何獲取響應頭? (我可以在DevTools的網絡標簽中看到它。)

var p = fetch(reqUrl, {
  method: "POST",
  headers: reqHeader,
  body: reqBody
});

p.then(function () {
})
.catch(function (err) {
   // CORS is disabled so I'm arriving here
   // "TypeError: NetworkError when attempting to fetch resource."
});

除非它支持CORS並且標頭名稱已列入白名單,否則您將無法這樣做。 這是安全問題,因為獲取禁止的標頭內容與禁止的響應內容一樣危險。 開發工具功能不受SOP的限制,因此不需要此類“權限”即可顯示用戶調試信息。 您無法通過腳本訪問任何devtool信息,因此僅向用戶顯示是安全的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM