首页 > 解决方案 > 尽管所有 cors 请求似乎都允许,但 Access-Control-Allow-Headers 在预检响应中不允许 content-type

问题描述

我有 2 个点网核心应用程序。一个用作 API 服务器,另一个用作 Angular Web 客户端。

只是为了让工作顺利完成,我把它放在我的 API 服务器启动的 ConfigureServices 方法中。我相信这只会允许任何请求..

services.AddCors(options =>
            {
                options.AddPolicy(ALL_ORIGINS,
                builder =>
                {
                    builder.WithOrigins("*");
                });
            });

它似乎正在工作,但我所有的请求都是 GET。我第一次尝试 POST 我得到了错误

Access-Control-Allow-Headers 在预检响应中不允许请求标头字段内容类型

考虑到我在 API 服务器上有一个糟糕的临时解决方案,我在 Angular Web 客户端服务器中放置了相同的“*”cors 策略,但它没有帮助。

我不确定我需要在这里做什么..

标签: .net-corecors

解决方案


尝试这个

services.AddCors(options =>
            {
                options.AddPolicy("AllowAllOrigins",
                    builder =>
                    {
                        builder.AllowAnyOrigin();
                        builder.AllowAnyHeader();
                        builder.AllowAnyMethod();
                    });
            });

这应该至少在 .NET Core 2.1 中有效


推荐阅读