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中文網其他相關文章!