WebUploader 是一个基于 HTML5 的多文件上传库,支持大文件分片上传、暂停和恢复等功能,在使用 WebUploader 时,可能会遇到各种报错问题,以下是一些常见的错误及其解决方案:
错误类型 | 错误描述 | 解决方案 |
Q_EXCEED_NUM_LIMIT | 在设置了 fileNumLimit 且尝试给 uploader 添加的文件数量超出这个值时派送。 | 确保上传的文件数量不超过设置的 fileNumLimit 限制。 |
Q_EXCEED_SIZE_LIMIT | 在设置了 Q_EXCEED_SIZE_LIMIT 且尝试给 uploader 添加的文件总大小超出这个值时派送。 | 确保上传的文件总大小不超过设置的 Q_EXCEED_SIZE_LIMIT 限制。 |
Q_TYPE_DENIED | 当文件类型不满足时触发。 | 确保上传的文件类型符合设置的 accept 规则。 |
F_EXCEED_SIZE | 文件大小超出限制。 | 检查文件大小是否超过设定的限制,并相应调整文件大小或限制。 |
timeout | 上传超时错误。 | 增加服务器的超时时间或优化网络连接。 |
uploadError | 通用上传错误。 | 检查网络连接、服务器状态以及文件路径是否正确。 |
http 错误码(如 404, 500 等) | 服务器返回的错误码。 | 根据错误码提示,检查服务器端代码和配置。 |
Content Security Policy (CSP) 违规 | 某些浏览器可能会因为 CSP 策略阻止加载特定资源。 | 检查并调整 CSP 设置,允许必要的资源加载。 |
示例代码
以下是一个使用 WebUploader 的基本示例,包括错误处理:

- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF8">
- <title>WebUploader Example</title>
- <!引入 WebUploader CSS >
- <link rel="stylesheet" href="path/to/webuploader.css">
- </head>
- <body>
- <div id="uploader">
- <div id="picker">选择文件</div>
- <ul id="fileList"></ul>
- </div>
- <script src="path/to/jquery.min.js"></script>
- <script src="path/to/webuploader.js"></script>
- <script>
- $(function() {
- var uploader = WebUploader.create({
- swf: 'path/to/Uploader.swf',
- server: '/upload',
- pick: '#picker',
- auto: true,
- resize: false,
- duplicate: true,
- accept: {
- title: 'Images',
- extensions: 'jpg,jpeg,png',
- mimeTypes: 'image/*'
- },
- fileNumLimit: 10,
- fileSingleSizeLimit: 2 * 1024 * 1024 // 2 MB
- });
- uploader.on('error', function(type) {
- if (type === 'Q_EXCEED_NUM_LIMIT') {
- alert('上传出错,文件数量不得大于10个');
- } else if (type === 'Q_EXCEED_SIZE_LIMIT') {
- alert('上传出错,文件总大小不得大于2MB');
- } else if (type === 'Q_TYPE_DENIED') {
- alert('上传出错,文件类型不正确');
- } else {
- alert('上传出错,请稍后再试');
- }
- });
- });
- </script>
- </body>
- </html>
FAQs
Q1: WebUploader 在 IE8 浏览器中始终报错,怎么办?
A1: IE8 浏览器对现代 JavaScript 特性支持有限,可能会导致 WebUploader 运行不正常,建议升级到更高版本的浏览器,或者使用兼容更好的上传库,如 Plupload,如果必须使用 IE8,可以尝试修改 WebUploader 的源码或配置文件,使其适应 IE8 的环境。
Q2: WebUploader 上传大文件时报 404 错误,如何解决?
A2: 404 错误通常表示服务器找不到请求的资源,这可能是由于服务器配置问题或文件路径不正确导致的,检查服务器端的路由配置,确保文件上传接口正确无误,还需要检查服务器是否支持大文件上传,以及是否有相关的文件大小限制,如果问题仍然存在,可以尝试使用开发者工具查看具体的请求和响应,以便更准确地定位问题。
