Maison >développement back-end >C++ >Comment activer CORS dans l'API Web ASP.NET Core pour les requêtes inter-domaines, en particulier sur le plan gratuit Azure ?

Comment activer CORS dans l'API Web ASP.NET Core pour les requêtes inter-domaines, en particulier sur le plan gratuit Azure ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2025-01-24 18:39:10309parcourir

How to Enable CORS in ASP.NET Core Web API for Cross-Domain Requests, Especially on Azure Free Plan?

Résolution des problèmes de demande inter-domaine avec CORS dans ASP.NET Core Web API

Le partage de ressources croisées (CORS) est crucial pour les applications Web avec des composants frontaux et back-end hébergés séparément. Ce guide aborde un problème de configuration CORS commun dans ASP.NET Core Web API, en particulier lors du déploiement du plan gratuit Azure.

Le défi:

Un site Web client hébergé sur un domaine différent a expérimenté des restrictions CORS lors de la tentative d'accéder à une API Web. Les conseils standard de Microsoft n'ont pas entièrement résolu le problème pour tous les points de terminaison de l'API.

La solution: une configuration CORS rationalisée

La solution implique une configuration CORS simplifiée:

  1. Installez le package nécessaire: Commencez par installer le package CORS NUGET:

    <code class="language-bash">Install-Package Microsoft.AspNetCore.Cors</code>
  2. Configurer CORS dans Startup.cs: Ajouter le service CORS dans la méthode ConfigureServices:

    <code class="language-csharp">public void ConfigureServices(IServiceCollection services)
    {
        services.AddCors();
        services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
    }</code>
  3. Activer les COR dans la méthode Configure: Utilisez le middleware UseCors pour activer les COR dans la méthode Configure. Cet exemple permet aux demandes de http://example.com:

    <code class="language-csharp">public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
    {
        app.UseCors(options => options.WithOrigins("http://example.com").AllowAnyMethod());
        app.UseMvc();
    }</code>

Considérations importantes:

  • Pour les politiques CORS simples (permettant des origines spécifiques), une politique personnalisée n'est pas requise.
  • Remplacer "http://example.com" par votre domaine client réel.
  • AllowAnyMethod() accorde l'accès à toutes les méthodes HTTP. Pour une sécurité améliorée, spécifiez explicitement les méthodes autorisées.
  • Consultez la documentation officielle de Microsoft pour les configurations avancées de COR et plus de contrôle granulaire.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn