如何使用npm请求将图像作为表单数据发布?

时间:2016-11-28 21:27:39

标签: node.js multipartform-data form-data node-request

我有一个特定的任务:我需要从源URL下载图像,并通过POST请求将其作为multipart / form-data上传到另一个主机。我正在尝试使用node.js请求库但从未成功。 以下代码不会在请求正文中发送任何内容。

request.post({
  url: uploadUrl, 
  formData: {
    photo: request(imageUri)
  }
}, function (err) {
  if (err) console.error(err.stack)
});

我试过直接通过表单数据库发布,但它似乎也没有用。如何在不创建临时文件的情况下解决这个问题?

2 个答案:

答案 0 :(得分:0)

正如我在评论中所说,你需要等到你有图像来发布帖子请求。如果你想管道流,你可以尝试这样的东西......

request.get(imageUri).pipe(request.post(uploadUri));

希望有所帮助。

答案 1 :(得分:0)

问题原来是我的imageUri中有查询参数。我认为这是form-data库中的一个错误。删除查询参数解决了问题。