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

How to POST image as form data using npm request?

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

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

我试过直接通过表单数据库发帖,但是好像也不行。如何在不创建临时文件的情况下解决此问题?

正如我在评论中所说,您需要等到获得图像后才能发出 post 请求。如果你想通过管道传输流,你可以尝试这样的事情......

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

希望对您有所帮助。

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