首頁  >  文章  >  web前端  >  如何在 IIS7 上啟用跨來源資源共用 (CORS):逐步指南

如何在 IIS7 上啟用跨來源資源共用 (CORS):逐步指南

Susan Sarandon
Susan Sarandon原創
2024-10-27 02:07:30509瀏覽

How to Enable Cross-Origin Resource Sharing (CORS) on IIS7: A Step-by-Step Guide

IIS7 啟用跨域資源共享:綜合指南

簡介

-來源資源共享(CORS) 允許來自一個網域的資源被來自不同來源的應用程式取得和使用。要在IIS7 上啟用CORS,請依照下列步驟操作:

設定

  1. 新增自訂標頭:

    • 導覽至託管網域的web.config 檔案。
    • 中加入以下自訂標頭:部分:
    <customHeaders>
      <add name="Access-Control-Allow-Origin" value="*" />
      <add name="Access-Control-Allow-Methods" value="GET,PUT,POST,DELETE,OPTIONS" />
      <add name="Access-Control-Allow-Headers" value="Content-Type" />
    </customHeaders>

故障排除🎜>儘管進行了配置,如果您仍然收到405 回應,可能是由於IIS7 對HTTP 選項的處理。

選項 1:修改 IIS7 處理程序對應

開啟 IIS 管理器。

    導航到處理程序對應。
  1. 找到「OPTIONSVerbHandler」。
  2. 將“ProtocolSupportModule”更改為“IsapiHandler”。
  3. 將可執行檔設定為:
  4. %windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll
  5. 選項2:處理程式碼中的OPTIONS 動詞

重寫應用程式程式碼中的BeginRequest 方法:
  1. protected void Application_BeginRequest(object sender,EventArgs e)
    {
        HttpContext.Current.Response.AddHeader("Access-Control-Allow-Origin", "*");
    
        if(HttpContext.Current.Request.HttpMethod == "OPTIONS")
        {
            // Handle pre-flight OPTIONS call from browser
            HttpContext.Current.Response.AddHeader("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE");
            HttpContext.Current.Response.AddHeader("Access-Control-Allow-Headers", "Content-Type, Accept");
            HttpContext.Current.Response.AddHeader("Access-Control-Max-Age", "1728000" );
            HttpContext.Current.Response.End();
        }
    }
  2. 結論

在IIS7 上啟用CORS 需要配置更新和潛在的故障排除。透過遵循上述步驟,您可以充滿信心地實現跨域互動。

以上是如何在 IIS7 上啟用跨來源資源共用 (CORS):逐步指南的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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