首页 >后端开发 >C++ >如何在 ASP.NET Core Web API 中启用 CORS 以进行跨域请求,尤其是在 Azure 免费计划上?

如何在 ASP.NET Core Web API 中启用 CORS 以进行跨域请求,尤其是在 Azure 免费计划上?

Mary-Kate Olsen
Mary-Kate Olsen原创
2025-01-24 18:39:10267浏览

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

>在ASP.NET Core Web API

中解决跨域请求问题

>交叉原始资源共享(CORS)对于具有单独托管前端和后端组件的Web应用程序至关重要。 本指南解决了ASP.NET Core Web API中的常见CORS配置问题,尤其是在部署到Azure免费计划时。

挑战:

>在尝试访问Web API时,托管在不同域上的客户网站经历了CORS限制。 标准Microsoft指南并未完全解决所有API端点的问题。

>

>

解决方案:简化的CORS配置>

该解决方案涉及简化的CORS设置:

  1. >

    安装必要的软件包:首先安装cors nuget软件包:

    <code class="language-bash">Install-Package Microsoft.AspNetCore.Cors</code>
  2. >在>中配置cors:Startup.cs>在>方法中添加cors服务:ConfigureServices>

    <code class="language-csharp">public void ConfigureServices(IServiceCollection services)
    {
        services.AddCors();
        services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1);
    }</code>
  3. >在>方法中启用cors:使用Configure>中间件启用方法中的cors。 此示例允许来自UseCors>的请求:Configure> 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>
重要的考虑因素:

对于直接的CORS策略(允许特定的起源),不需要自定义策略。

>用实际的客户端域替换
  • >授予对所有HTTP方法的访问。 为了增强安全性,请明确指定允许的方法。"http://example.com">
  • >请参阅官方Microsoft文档,以进行高级CORS配置和更详细的控制。
  • > AllowAnyMethod()

以上是如何在 ASP.NET Core Web API 中启用 CORS 以进行跨域请求,尤其是在 Azure 免费计划上?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn