视频上传不可用
zhulige opened this issue · 4 comments
.NetCore下视频上传不可用。
视频超过100M可以复现。
报什么错可以提供一下吗?这么大的视频,支持的有可能真的不太好,这个上传是没有做分片上传的~
我用一个168M的视频实验了一下,这个错误其实不是程序的问题,是一系列配置的问题。
首先会报如下一个错误:
这是因为IIS默认会限制最大Request的大小,默认是28.6M(30000000字节)需要修改IIS的配置。错误中也提示的比较清楚了,修改Verify the configuration/system.webServer/security/requestFiltering/requestLimits@maxAllowedContentLength setting in the applicationhost.config or web.config file.
具体可以参考微软IIS的文档:https://docs.microsoft.com/en-us/iis/configuration/system.webserver/security/requestfiltering/requestlimits/
接着程序会抛另外一个问题:
这个其实是.net Core会限制Request的大小,谷歌可知需要加如下的配置:
public void ConfigureServices(IServiceCollection services)
{
services.AddUEditorService();
services.AddMvc();
// 加上如下配置
services.Configure<FormOptions>(x =>
{
x.ValueLengthLimit = int.MaxValue;
x.MultipartBodyLengthLimit = int.MaxValue; // In case of multipart
});
}
可以参考SOF的回答:https://stackoverflow.com/questions/40364226/multipart-body-length-limit-exceeded-exception
所以,该问题跟UEditor.Core无关,属于配置的策略问题。此外,个人觉得对于视频这类比较大的文件,不是非常适合这种上传方式。采用断点续传的方式更好,当然了,断点续传对技术的要求比较高,UEditor.Core暂时也不会考虑支持~