1

我正在使用 Node.js 创建一个聊天应用程序,并希望有一个文件上传功能。虽然我可以上传文件,但浏览器总是会被重定向到另一个链接或刷新的页面,这当然会破坏聊天。

首先,我尝试使用 Express 来做到这一点:

索引.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> 

应用程序.js:

app.post('/', function(req, res){
    //some validation and rename file
    res.send();
    return false;
});

接下来我尝试使用 AJAX,但仍然无法做到,每当 AJAX POST 到 Node.js 服务器时,它都会重新加载页面。无论如何,我的 AJAX 代码:

索引.html:

$.ajax({  
    type: "POST",  
    url: "/",  
    data: formdata,  
    processData: false,
    contentType: false,
    success: function (res) {
        document.getElementById("chatText").innerHTML = res; 
    } 
});  
return false;

第三,我去看了 Uploadify,但不想在我的网站上添加 Flash 依赖,所以我没有实现它。

任何人都可以帮助我吗?我不想在上传文件时重新加载页面。

4

2 回答 2

3

您可以在客户端使用动态创建的隐藏框架来完成此操作。

有关 expressjs 的详细操作方法,请参见此处。

于 2012-09-18T08:35:00.843 回答
1

Uploadify 现在有一个纯 HTML5 播放。

于 2013-02-25T17:15:46.820 回答