如何使用http发布上传的文件?

时间:2011-02-14 20:46:05

标签: node.js commonjs express

我如何在快递应用程序中执行此操作?那是, 将文件发布到Facebook:

curl -F 'access_token=xyz' \
    -F 'source=@file.png' \
    -F 'message=Caption for the photo' \
    https://graph.facebook.com/me/photos

我正在使用以下内容从repo中的示例上传文件:

app.post('/', function(req, res, next){
 req.form.complete(function(err, fields, files){
   if (err) {
     next(err);
   } else {
     console.log('\nuploaded %s to %s'
       ,  files.image.filename
       , files.image.path);
     res.redirect('back');
   }
 });
})

2 个答案:

答案 0 :(得分:2)

看看request - 模块,它(几乎)太容易了:

fs.readStream('file.png').pipe(request.post('http://graph.facebook.com/me/photos'))

这将为给定的URL和流file.png创建一个POST请求。添加其余字段应该是相当简单的。

答案 1 :(得分:0)

您可以使用Node创建HTTP请求。请参阅文档中的以下示例:

http://nodejs.org/docs/v0.4.0/api/http.html#http.request