标签:文件 Egg config image js multipart 上传
在使用Egg.js
搭建文件上传服务时,遇到了几个一般新手都会遇到的坑。
经查阅官方文档,Egg框架中默认使用egg-multipart
插件进行文件上传,所以上传文件前需要做相关的配置。
上传文件提示: filetype undefined
(图片可以上传,不报错)
- 原因:没有给egg指定上传文件的类型
解决方法: 在config
中添加如下配置
// config/config.default.js
config.multipart = {
mode: 'file', // 对应文件类型
}
上传 txt
文件提示:Invalid filename
-
原因:
egg-multipart
有对上传文件的后缀名限制的白名单(whitelist),.txt
后缀没有在默认whitelist中,导致上传失败。 -
默认白名单:
const whitelist = [
// images
'.jpg', '.jpeg', // image/jpeg
'.png', // image/png, image/x-png
'.gif', // image/gif
'.bmp', // image/bmp
'.wbmp', // image/vnd.wap.wbmp
'.webp',
'.tif',
'.psd',
// text
'.svg',
'.js', '.jsx',
'.json',
'.css', '.less',
'.html', '.htm',
'.xml',
// tar
'.zip',
'.gz', '.tgz', '.gzip',
// video
'.mp3',
'.mp4',
'.avi',
];
解决方法: 在config
中添加如下配置
// config/config.default.js
config.multipart = {
fileExtensions: [
'.txt',
],
}
上传大文件
提示:Reach fileSize limit
解决方法: 在config
中添加如下配置
// config/config.default.js
config.multipart = {
fileSize: '100mb', // Max file size (in bytes), default is 10mb
}
参考文档:
欢迎访问:个人博客地址
标签:文件,Egg,config,image,js,multipart,上传 来源: https://www.cnblogs.com/tive/p/15425824.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。