所以我使用的是plupload,它使用附加了FormData的blob发送FILES:
来自plupload.dev.js的异常
formData = new o.FormData();
// Add multipart params
plupload.each(plupload.extend(args, up.settings.multipart_params), function(value, name) {
formData.append(name, value);
});
// Add file and send it
formData.append(up.settings.file_data_name, chunkBlob);
xhr.send(formData, {
runtime_order: up.settings.runtimes,
required_caps: up.settings.required_features,
preferred_caps: preferred_caps,
swf_url: up.settings.flash_swf_url,
xap_url: up.settings.silverlight_xap_url
});
其中chunkBlob是要发送的块的文件Blob ...
现在这将按以下方式解析到我的服务器:
[$_FILES] => Array
(
[file] => Array
(
[name] => blob
[type] => application/octet-stream
[tmp_name] => /tmp/php0BuCPN
[error] => 0
[size] => 102400000
)
)
正如您所看到的,它将名称设置为“blob”.....我有没有办法在使用此方法发送blob时配置formData使用的名称?
我的服务器已将upload_max_filesize设置为1024M .....我正在使用plupload来块我的文件以尝试上传大于1024M的文件....每个块只有100M大.... 。然而,我面临的一个问题是,如果文件大小超过1024M,有时$ _FILES和$ _POST最终会变空,即使单个blob大小只有100M ...
我的猜测是PHP使用$ _FILES ['file']的名称字段,并发现这些单独的块是针对同一个文件的,并相应地应用upload_max_filesize(即使每个块都小于upload_max_filesize限制)。 ...所以在这里我试图更改名称字段,如果$ _FILES ['file'],以便PHP将每个块视为一个单独的文件而不是相同的文件,因此所有的块都成功上传.... ..< - 让我知道我的推理是否有问题......