【问题标题】:.Net core - Can not upload file after deploy to IIS.Net 核心 - 部署到 IIS 后无法上传文件
【发布时间】:2020-02-23 11:57:04
【问题描述】:

我正在创建一个可以上传带有 multipart/form-data 的 excel 文件的 api。当我在visual studo上运行时,它工作正常。但是,部署到 IIS 后,无法上传,报错如下:

已被 CORS 策略阻止:无“访问控制允许来源” 请求的资源上存在标头。

我尝试使用 web.config 进行设置,但仍然无法正常工作,事件 api POST、GET、DELETE 与 json 上下文仍然正常工作。

【问题讨论】:

  • 您能告诉我们您是如何设置public void Configure(...) 方法的吗?

标签: asp.net-core .net-core asp.net-core-webapi


【解决方案1】:

Have a look at the docs on CORS setup in .net core

在 Startup 中,您使用 services.AddCors() 指定策略,例如

        public void ConfigureServices(IServiceCollection services)
        {
            services.AddCors(options =>
            {
                options.AddPolicy("MyPolicy",
                builder =>
                {
                    builder.WithOrigins("http://example.com",
                                        "http://www.contoso.com");
                });
            });

            services.AddMvc();
        }

【讨论】:

  • 我试过了,还是不行。注意:使用普通api可以正常工作,只有api上传不起作用
  • 在文档中,它提到您可以使用.AllowAnyHeader().AllowAnyMethod(); 来制作bulider,您尝试过吗?
  • @user3409461 你确定你的内容类型对于你的上传是正确的并且文件不是太大吗? Cors 错误有时会掩盖其他错误消息
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多