我正在使用Node.js创建聊天应用程序,并希望拥有文件上传功能。虽然我可以上传文件,但浏览器总会被重定向到另一个链接或页面刷新,这当然会破坏聊天。
首先我尝试使用Express来执行此操作:
的index.html:
<form id="fileSendButton" action="/" method="post" enctype="multipart/form-data">
<input type="text" name="title"><br>
<input type="file" name="upload" multiple="multiple"><br>
<input type="submit" value="Upload">
</form>
app.js:
app.post('/', function(req, res){
//some validation and rename file
res.send();
return false;
});
下一步我尝试使用AJAX,但仍然无法做到,每当AJAX POST到Node.js服务器时,它都会重新加载页面。无论如何我的AJAX代码:
的index.html:
$.ajax({
type: "POST",
url: "/",
data: formdata,
processData: false,
contentType: false,
success: function (res) {
document.getElementById("chatText").innerHTML = res;
}
});
return false;
第三次我去看看Uploadify,但不想在我的网站上添加Flash依赖性,所以我没有实现它。
有人可以帮我吗?我不想在上传文件时重新加载页面。
答案 0 :(得分:3)
您可以在客户端使用动态创建的隐藏框架来执行此操作。
请参阅here了解详情如何使用expressjs。
答案 1 :(得分:1)
Uploadify现在有一个纯HTML5播放。