一.413错误 Request Entity Too Large

1.对应的文件上传接口设置

[DisableRequestSizeLimit] //不限制大小
[RequestSizeLimit(30000000)] //限定指定大小范围,单位为字节,这里就是 30M
public BaseResultOutput ImageFileUpload(IFormFile file){
//todo
}

2.项目发布后会生成个 web.config 文件,在 web.config 文件中,添加

< configuration>
  < system.webServer>
    < security>
      < requestFiltering>
        < !--单位:字节。 -->
        < requestLimits maxAllowedContentLength="1073741824" />
        < !-- 1 GB -->
      < /requestFiltering>
    < /security>
  < /system.webServer>
< /configuration>

注意,每次生成的时候都会刷新该文件的,所以更新项目版本的时候需要将该文件进行隔离

以上是针对 IIS 作为 web 托管的设置,如果是 Kestrel 或者更详细的配置可参考:MSDN

 

二.Multipart body length limit 134217728 exceeded.
Post的body大概超过100多M会碰到这个错误

public void ConfigureServices(IServiceCollection services)
{
    services.AddMvc();
    //解决Multipart body length limit 134217728 exceeded
    services.Configure(x =>
    {
        x.ValueLengthLimit = int.MaxValue;
        x.MultipartBodyLengthLimit = int.MaxValue; // In case of multipart
    });
}