Javascript 分块的多部分问题
我正在尝试设置FineUploader的测试实现,但遇到了分块问题。我已将debug设置为true,在过程结束之前,一切似乎都进展顺利,出现以下错误: “[Fine Uploader 5.0.2]已上载0的所有区块-正在完成…”custom.fineuploader-5.0.2.js:207 “[Fine Uploader 5.0.2]提交0的所有区块完成请求”custom.fineuploader-5.0.2.js:207 “[Fine Uploader 5.0.2]发送0的POST请求”custom.fineuploader-5.0.2.js:207 “[Fine Uploader 5.0.2]收到响应状态200,正文为:{”错误“:“服务器错误。不是多部分请求。请将forceMultipart设置为默认值(true)。”,“UploadeName”:null,“模板”:“未定义”,“类别”:“未定义”}”自定义。fineuploader-5.0.2.js:207” “[Fine Uploader 5.0.2]为0成功完成” 底部的错误是“服务器错误。不是多部分请求。请将forceMultipart设置为默认值(true)”,但据我所知,我的代码已经这样设置了。下面是我在代码中为它准备的内容:Javascript 分块的多部分问题,javascript,file-upload,fine-uploader,Javascript,File Upload,Fine Uploader,我正在尝试设置FineUploader的测试实现,但遇到了分块问题。我已将debug设置为true,在过程结束之前,一切似乎都进展顺利,出现以下错误: “[Fine Uploader 5.0.2]已上载0的所有区块-正在完成…”custom.fineuploader-5.0.2.js:207 “[Fine Uploader 5.0.2]提交0的所有区块完成请求”custom.fineuploader-5.0.2.js:207 “[Fine Uploader 5.0.2]发送0的POST请求”cu
var uploadHandler = $('#fine-uploader').fineUploader({
debug: true,
request: {
endpoint: 'server/endpoint.php',
forceMultipart: true,
params: // send the values to backend file (endpoint.php)
{
template:function() {
return $("#price_template_id").val();
},
category:function(){
return $("#category_id").val();
}
}
},
validation: { // validation for the images uploaded
allowedExtensions: ['jpeg', 'jpg'],
sizeLimit: 20971520 // 20 MB = 20 * 1024 * 1024 bytes 20971520
},
editFilename: {
enabled: true
},
display: { //display image on upload
fileSizeOnSubmit: true
},
resume: { //enable resume on upload
enabled: true
},
retry: { //enable retry on upload
enableAuto: true
},
forceMultipart: {
enabled: true
},
chunking: { //enable chunking on upload
concurrent: {
enabled: true
},
enabled: true,
partSize: 200000, //200KB per chunk
success: {
endpoint: 'server/endpoint.php'
}
},
template: "qq-template",
autoUpload: true,
showMessage: function(message) { //show message if any error occur during uplaod process
alert(message);
}
})
您可以在此处查看/测试实现:
你知道我在这方面做错了什么吗
谢谢 您的服务器未正确处理“所有区块完成”POST请求。这不是一个多部分编码的请求。最后一个区块成功上传到服务器后,由Fine Uploader发送。这篇文章包含一个URL编码的消息体,其中包含有关已完成分块文件的信息。您的服务器应该组合与文件关联的所有块,然后做出适当的响应。更多信息请访问。谢谢!我正在使用github存储库中的端点和处理程序:我相信这可以处理将各个部分重新组合在一起的问题,但听起来可能缺少一些东西。对于FineUploader,有没有完整的例子来说明一切是如何结合在一起的?似乎大多数人对这个上传器都有问题,因为实际上没有一个完整的例子(很容易找到)。这是一个非常复杂的上传器,有大量受支持的工作流。是否有涵盖所有可能的服务器端语言和工作流的服务器端示例?不。不幸的是,考虑到创建所需的时间,这是不现实的。但是,本手册中有许多语言中最常见的工作流示例。对于不太常见的工作流,docs站点上有大量文档,解释了如何使用所选的服务器端语言处理请求……您使用的是并发分块,这不是常见功能(而且是非常新的)。它旨在提高大型单文件上传的效率。只要按照我指给你的文档来处理Fine Uploader在使用此工作流时发送的额外POST请求,你应该会没事的。您所需要做的就是在examples repo中选取一个常见的服务器端示例,并对其进行扩充以处理“All chunks done”POST请求。如果你遇到问题,一定要用你的服务器代码发布一个问题。好的,我想我现在走上了正确的轨道。github中的PHP示例不支持并发分块或新的分块成功帖子,因此我需要对其进行扩展,并在服务器上添加该功能。谢谢你的帮助和正确的方向!我现在一切都好了。再次感谢你的帮助!