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

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

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

我试图直接通过表单数据库,但它似乎并没有工作。 如何在不创build临时文件的情况下解决这个问题?

正如我在评论中所说的,你需要等到你有图片发出post请求。 如果你想pipestream,你可以尝试这样的事情…

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

希望有所帮助。

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