使用`request`和formData包含一个文件(客户端)

我试图从包含一个文件对象的客户端表单上传表单数据,但有问题使用request – https://github.com/request/request#forms

这会引发exception(由于文件对象):

 var request = require('request'); var myData = { a_key: 'a value!', a_file: fileInputElement.files[0] } request.post({url: 'http://foo.com/upload', formData: myData}); 

这提交了一个空的请求

 var formData = new FormData(); formData.append('a_key', 'a value!'); formData.append('a_file', fileInputElement.files[0]); request.post({url: 'http://foo.com/upload', formData: formData}); 

当我不使用request时,我能够得到它的工作,而不是:

 var formData = new FormData(); formData.append('a_key', 'a value!'); formData.append('a_file', fileInputElement.files[0]); var xhr = new XMLHttpRequest(); xhr.open('POST', 'http://foo.com/upload'); xhr.send(formData); 

https://github.com/request/request#forms只有使用fs.createReadStream例子,你不能在客户端代码上做。

这只是request模块的限制吗? 任何帮助,将不胜感激!