【发布时间】:2011-11-24 10:48:11
【问题描述】:
我正在使用valums ajax file-uploader
我的 nodejs 服务器端如下所示:
fileStream = fs.createWriteStream(__dirname+'/../public/images/houses/'+rndname);
req.pipe(fileStream);
req.on('end', function() {
body = '{"success":"true", "name": "'+rndname+'"}';
res.writeHead(200,
{ 'Content-Type':'text/plain'
, 'Content-Length':body.length
});
res.end(body);
});
客户端:
function createUploader(){
var uploader = new qq.FileUploader({
element: document.getElementById('homepic'),
action: '/server/upload',
allowedExtensions: ['jpg', 'png', 'gif'],
multiple:true,
onComplete: function(id, fileName, responseJSON){
$("#homepic").append("<img src='/images/houses/"+responseJSON.name+"' class='mediumpic' /> ");
}
});
}
window.onload = createUploader;
这一切都适用于单个文件上传,非常棒!
所以想象一下 - 我按下上传按钮,选择图片,它上传非常快,显示在屏幕上。 现在我想上传另一个。我选择图片,它快速上传到服务器(我在服务器上看到它),我得到新文件名和成功的响应,我把图片和我的追加放在屏幕上。但是图片没有显示出来。我尝试在新标签中打开只是图片,即使我在服务器上看到它站在正确的目录中,仍然什么也没有。等待 3-5 分钟后,它就会出现,甚至不需要刷新页面。是什么导致了这种行为?是管道,我需要打电话给马里奥来修理它还是别的什么? :)
【问题讨论】:
-
根据github page,该项目已移至fineuploader.com,导致上述链接断开。
标签: node.js file-upload