首頁 >web前端 >js教程 >CORS 錯誤:為什麼我的伺服器拒絕預檢請求中的「Content-Type」?

CORS 錯誤:為什麼我的伺服器拒絕預檢請求中的「Content-Type」?

Patricia Arquette
Patricia Arquette原創
2024-10-28 14:21:02525瀏覽

CORS Error: Why Does My Server Reject

CORS 錯誤:修改允許的標頭

嘗試執行檔案上傳的POST 要求時,瀏覽器經常會遇到錯誤:「 Request Access-Control-Allow-Headers 不允許header 欄位Content-Type。透過傳送OPTIONS 請求來請求具有非標準內容類型(例如「multipart/form-data」)的請求。 OPTIONS 請求檢查伺服器是否允許標準 HTTP 集中未包含的特定請求標頭。

初步嘗試的解決方案:

為了解決此問題,開發人員最初嘗試將以下標頭添加到POST 請求中:

後續錯誤:

但是,這導致了一個新錯誤:「請求標頭欄位Access- Access-Control-Allow-Headers 不允許Control-Allow-Origin。」
"Access-Control-Allow-Origin": "*",
"Access-Control-Allow-Methods": "GET,POST,PUT,DELETE,OPTIONS",
"Access-Control-Allow-Headers": "Content-Type, Access-Control-Allow-Headers, Authorization, X-Requested-With"

解決方案:

出現此問題是因為伺服器必須允許「Content-在「Access-Control-Allow-Headers」設定中鍵入「標頭」。器發送帶有“Content-Type”標頭的預檢OPTIONS 請求,如果伺服器不允許,CORS 請求將失敗。 json」內容類型或在伺服器的Access-Control-Allow-Headers 配置中允許「Content-Type」。

Angular 程式碼範例:

覆寫預設值Angular 中的 header,可以使用以下程式碼:

以上是CORS 錯誤:為什麼我的伺服器拒絕預檢請求中的「Content-Type」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn