我使用express.js 3.5.1作为我的应用程序的后端。这只是一个基本的论坛,但我希望我的用户能够上传图片。我不能使用一个简单的形式上传,因为它将导致重定向。我找到的唯一可能的解决方案是使用socketio-文件上传。不过,为了上传图片,我对是否包括socket.io犹豫不决。对于一个简单的XMLHttpRequest或Ajax请求,有什么方法可以做到吗?或者是另一种我没有想到的方法?
下面是我当前需要处理来自表单的请求的服务器代码:
app.post('/save-image', checkSession, function(req, res)
{
actionLog( req.session.username, 'is trying to upload a file' );
var form = new formidable.IncomingForm();
form.parse(req, function(err, fields, files)
{
console.log(files);
res.send({ error: 'not setup yet'
})
});
});发布于 2014-04-23 20:14:00
我遇到的问题是我的请求路由器,而不是请求本身。原来它不支持多部分/表单数据类型请求。
切换到http代理,一切都自行解决了。
节点模块不支持多部分/表单数据请求。
发布于 2014-04-12 05:41:04
你不能改变你的代码。在加载所有帖子时,只需向客户端发送图像的urls即可。
场景将如下所示:
1)用简单的POST请求上传图片。
2)在运行AJAX调用之后,获取所有的帖子,例如"/posts“。
3)控制器返回所有posts,例如:[{ id: 1, text: "asd", image: "yourhost.com/images/image.png"}, ...]
4)使用jquery或其他重载视图。
https://stackoverflow.com/questions/23025934
复制相似问题