首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

ASP.NET WebAPI CORS 設定 EnableCorsAttribute 無效的常見原因排查

     編輯:程式設計綜合問答

檢查清單

  1. 啟用 CORS:WebApiConfig.Register 中必須呼叫 config.EnableCors();。
  2. 屬性位置:[EnableCors(...)] 可加在 Controller 或 Action 上,若加在 Action 需確保 Controller 未被 [DisableCors] 標記。
  3. Origin 完全匹配:origins: "https://localhost:40226" 必須與瀏覽器發送的 Origin 標頭**完全一致**(含協定、埠號、無尾斜線)。
  4. 預檢請求:非簡單請求(含自訂標頭、非 GET/POST)會先發 OPTIONS,需確保 IIS/ASP.NET 管線允許 OPTIONS 通過(<modules runAllManagedModulesForAllRequests="true">)。
  5. 標頭與方法:headers: "*", methods: "*" 通常足夠,若仍失敗請明確列出 Content-Type, Authorization 等。

除錯技巧

瀏覽器 Network 面板查看 OPTIONS 回應是否包含 Access-Control-Allow-Origin、Access-Control-Allow-Methods、Access-Control-Allow-Headers。若缺少,檢查管線順序與 web.config <cors> 設定。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved