小编Bla*_*ake的帖子

ASP .NET Core:仅适用于某些静态文件类型的 CORS 标头

我有一个 ASP .NET Core 自托管项目。我正在提供静态文件夹中的内容(没问题)。它可以毫无问题地跨站点提供图像(显示 CORS 标头)。但是,对于某些文件类型,例如 JSON,它们的 CORS 标头不会显示,并且客户端站点无法看到内容。如果我将文件重命名为未知类型(例如 JSONX),它会提供 CORS 标头,没问题。我怎样才能让这个东西用 CORS 标头服务所有东西?

我在 Startup.cs 中设置了以下 CORS 策略:

    public void ConfigureServices(IServiceCollection services)
    {
        services.AddCors(options =>
        {
            options.AddPolicy("CorsPolicy",
                builder => builder.AllowAnyOrigin()
                .AllowAnyMethod()
                .AllowAnyHeader()
                .AllowCredentials() );
        });

        // Add framework services.
        services.AddMvc();
    }
Run Code Online (Sandbox Code Playgroud)

以下是我的配置

    public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
    {
        app.UseCors("CorsPolicy");
        loggerFactory.AddConsole(Configuration.GetSection("Logging"));
        loggerFactory.AddDebug();

        if (env.IsDevelopment())
        {
            app.UseDeveloperExceptionPage();
            app.UseBrowserLink();
        }
        else
        {
            app.UseExceptionHandler("/Home/Error");
        }

        // Static File options, normally would be in-line, but the SFO's file provider is …
Run Code Online (Sandbox Code Playgroud)

.net c# asp.net asp.net-core-mvc asp.net-core

5
推荐指数
1
解决办法
2556
查看次数

标签 统计

.net ×1

asp.net ×1

asp.net-core ×1

asp.net-core-mvc ×1

c# ×1