如何在NodeJs中发送multipart/form-data PUT请求?
我需要发送一个数组是这样的:如何在NodeJs中发送multipart/form-data PUT请求?
[ a: 'b',
file: {file content}
]
我尝试使用request模块FORMDATA选择它做:
request.put({ url: 'http://example.com/upload',
formData: {
a: 'b',
file: fs.createReadStream(__dirname + '/for-test.jpg')
}
});
在这个例子中PUT数据将是空的,好像FORMDATA选项被忽略。
回答:
我试过你的代码,并有同样的问题。经过一番挖掘,我意识到你正在使用未发布的功能。
如果您搜索字符串'formData'的当前npm包,它不存在。如果你克隆最新的GitHub,并搜索,字符串'formData'出现(我做了搜索使用grep
,顺便说一句),并有even a test for it。
如果要使用此功能抢鲜你可以挂钩您的package.json指向回购:
{ ...
"dependencies": {
...
"request":"git+https://github.com/request/request.git#master",
...
}
}
新鲜NPM安装会给你从与该功能GitHub上的最新版本。做完之后,所有事情都为我解决了。
这应该让你一直到功能发布:)
回答:
您需要使用body
属性,并且需要将对象串联起来。
request({ method: 'PUT',
url: 'http://example.com/upload',
body: JSON.stringify({
a: 'b',
file: fs.createReadStream(__dirname + '/for-test.jpg')
})
});
以上是 如何在NodeJs中发送multipart/form-data PUT请求? 的全部内容, 来源链接: utcz.com/qa/263454.html