Aktivieren der ursprungsübergreifenden Ressourcenfreigabe auf IIS7
Die Aktivierung der ursprungsübergreifenden Ressourcenfreigabe (CORS) auf IIS7 ist erforderlich, um asynchrone Ressourcenanforderungen zu ermöglichen über verschiedene Ursprünge hinweg erstellt werden, wodurch Browser-Sicherheitsbeschränkungen überwunden werden. Es können jedoch Probleme auftreten, wenn IIS7 vor einer erfolgreichen 200-Antwort den Fehler „405-Methode nicht zulässig“ zurückgibt.
Beheben des Fehlers „405-Methode nicht zulässig“
Der Fehler 405 ist normalerweise der Fall tritt auf, weil IIS7 die HTTP-OPTIONS-Antwort verarbeitet, die der eigentlichen Anforderung vorausgeht, anstatt sie an Ihre Anwendung weiterzuleiten. Um dies zu korrigieren:
Mit diesen Änderungen leitet IIS7 das HTTP weiter OPTIONS-Verb für Ihre Anwendung.
Alternative Lösung: Umgang mit dem OPTIONS-Verb in BeginRequest
Alternativ können Sie das HTTP-OPTIONS-Verb manuell in der BeginRequest-Methode Ihrer Anwendung verarbeiten:
<code class="c#">protected void Application_BeginRequest(object sender, EventArgs e) { HttpContext.Current.Response.AddHeader("Access-Control-Allow-Origin", "*"); if (HttpContext.Current.Request.HttpMethod == "OPTIONS") { // Handle HTTP OPTIONS pre-flight request 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(); } }</code>
Durch die Implementierung eines dieser Ansätze können Sie CORS auf IIS7 aktivieren und den 405-Fehler beheben, um erfolgreiche Cross-Origin-Anfragen sicherzustellen.
Das obige ist der detaillierte Inhalt vonWarum gibt IIS7 beim Aktivieren von CORS den Fehler „405-Methode nicht zulässig' zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!