Für ein relativ einfaches Kopieren/Einfügen für .NET-Anwendungen habe ich dies geschrieben, um CORS aus einer global.asax
Datei. Dieser Code befolgt die in der aktuell akzeptierten Antwort gegebenen Ratschläge und spiegelt die in der Anfrage angegebene Herkunft in der Antwort wieder. Damit wird '*' effektiv erreicht, ohne es zu verwenden.
Der Grund dafür ist, dass dies mehrere andere CORS-Funktionen ermöglicht einschließlich der Möglichkeit, eine AJAX-XMLHttpRequest mit dem Attribut "withCredentials" auf "true" gesetzt zu senden.
void Application_BeginRequest(object sender, EventArgs e)
{
if (Request.HttpMethod == "OPTIONS")
{
Response.AddHeader("Access-Control-Allow-Methods", "GET, POST");
Response.AddHeader("Access-Control-Allow-Headers", "Content-Type, Accept");
Response.AddHeader("Access-Control-Max-Age", "1728000");
Response.End();
}
else
{
Response.AddHeader("Access-Control-Allow-Credentials", "true");
if (Request.Headers["Origin"] != null)
Response.AddHeader("Access-Control-Allow-Origin" , Request.Headers["Origin"]);
else
Response.AddHeader("Access-Control-Allow-Origin" , "*");
}
}