如何在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

回到顶部