Heim >Backend-Entwicklung >C++ >Wie aktiviere ich CORS in der ASP.NET Core-Web-API?
Diese Anleitung zeigt zwei Ansätze zum Aktivieren von CORS in Ihrer ASP.NET Core-Web-API: die Verwendung von Middleware und eine manuelle Header-Injektionsmethode.
Methode 1: Middleware-basierte CORS-Konfiguration
Der einfachste und empfohlene Ansatz ist die Nutzung des Microsoft.AspNetCore.Cors
NuGet-Pakets.
Installieren Sie das Paket:
<code>Install-Package Microsoft.AspNetCore.Cors</code>
CORS-Dienste konfigurieren:
Registrieren Sie in Ihrer Startup.cs
Datei den CORS-Dienst:
<code class="language-csharp">public void ConfigureServices(IServiceCollection services) { services.AddCors(); // ... other service configurations }</code>
Verwenden Sie CORS Middleware:
Verwenden Sie in der Configure
-Methode die app.UseCors
-Middleware, um zulässige Ursprünge und HTTP-Methoden zu definieren. Ersetzen Sie "http://example.com"
durch Ihre tatsächlich zulässigen Herkunft(en).
<code class="language-csharp">public void Configure(IApplicationBuilder app, IWebHostEnvironment env, ... ) { app.UseCors(options => options.WithOrigins("http://example.com").AllowAnyMethod()); // ... other middleware configurations }</code>
Methode 2: Manuelle Header-Injektion (Fallback-Methode)
Wenn sich der Middleware-Ansatz als unwirksam erweist, können Sie CORS-Header direkt zu Ihren HTTP-Antworten hinzufügen. Dies wird im Allgemeinen aufgrund der geringeren Wartbarkeit weniger bevorzugt.
<code class="language-csharp">app.Use(async (context, next) => { context.Response.Headers.Add("Access-Control-Allow-Origin", "http://example.com"); context.Response.Headers.Add("Access-Control-Allow-Methods", "GET, POST, PUT, PATCH, DELETE"); context.Response.Headers.Add("Access-Control-Allow-Headers", "X-PINGOTHER, Content-Type, Authorization"); await next.Invoke(); });</code>
Denken Sie daran, diese Middleware vor app.UseRouting()
oder einem gleichwertigen Middleware-Handling-Routing zu positionieren.
Wichtige Überlegungen:
):** Avoid using the wildcard
"*"for
WithOrigins` in Produktionsumgebungen. Dadurch wird Ihre API für Anfragen von jedem Ursprung geöffnet, was ein erhebliches Sicherheitsrisiko darstellt.AddCustomHeader
oder dem Äquivalent in der von Ihnen gewählten Methode. Geben Sie immer "Content-Type"
.Microsoft.AspNetCore.Cors
angeboten wird. Dies ermöglicht benannte Richtlinien und komplexere Szenarien.Diese erweiterte Anleitung bietet eine klarere Erklärung und eine verbesserte Struktur für die Implementierung von CORS in der ASP.NET Core-Web-API. Wählen Sie die Methode, die Ihren Anforderungen am besten entspricht, und priorisieren Sie bewährte Sicherheitspraktiken.
Das obige ist der detaillierte Inhalt vonWie aktiviere ich CORS in der ASP.NET Core-Web-API?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!