在Angular项目中,仅在DIST版本中出现cors错误

时间:2020-02-04 20:15:50

标签: angular cors

我正在Angular 8中开发一个项目,该项目使用了Net Core中的API。
当我使用“ ng serve -o”运行应用程序时,一切正常,并且不会收到cors错误。
但是当制作dist版本并运行应用程序时,我收到CORS错误。

已经尝试在前端使用代理,并且已正确配置API。

有什么主意吗?

在前端我有proxy.confi.json文件

  "/api": {
      "target": "http://localhost",
      "secure": false
  }
}

并将其包含在angular.json文件中

"serve": {
          "builder": "@angular-devkit/build-angular:dev-server",
          "options": {
            "browserTarget": "CostControl:build",
            "proxyConfig": "src/proxy.conf.json"
          },

在.net api中,我有文件startup.cs

ublic void ConfigureServices(IServiceCollection services)
        {
            services.AddCors(options =>
            {
                options.AddPolicy(MyAllowSpecificOrigins,
                builder =>
                {
                    builder.WithOrigins("http://localhost:4200",                                     
                                        "http://localhost")
                                        .AllowAnyHeader()
                                        .AllowAnyMethod();
                });
            });

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

我可以通过在.net api的cors配置中添加这一行来解决

services.AddCors(options =>
            {
                options.AddPolicy(MyAllowSpecificOrigins,
                builder =>
                {
                    builder.allowAnyOrigin().AllowAnyHeader().AllowAnyMethod();                                                                            
                });
            });