这是我的请求,它能够找到服务,但在日志中我收到错误,说内容类型应该是multipart / form-data,我应该如何在以下请求中设置内容类型。
var fs = require('fs');
var request = require('request');
var formData = {
// Pass a simple key-value pair
deviceId: '2612',
// Pass data via Buffers
checksum: '132654798',
fileSize: '60',
fileType: 'configuration',
compressionType: 'Z',
// Pass data via Streams
file: fs.createReadStream('C:/Ruby193/Mybugs.txt'),
};
request.post({url:'https://transfer-upload-v1/file', formData: formData,}, function optionalCallback(err, httpResponse, body) {
if (err) {
return console.error('upload failed:', err);
}
console.log('Upload successful! Server responded with:', body);
});
答案 0 :(得分:0)
我已经在此网址nodejs post multipart form data
上的Stack Overflow上的相同问题上阅读了答案它使用restler模块!
此网址的代码示例:
经过一些研究,我决定使用restler模块。这使得分段上传非常简单。
fs.stat("image.jpg", function(err, stats) {
restler.post("http://posttestserver.com/post.php", {
multipart: true,
data: {
"folder_id": "0",
"filename": restler.file("image.jpg", null, stats.size, null, "image/jpg")
}
}).on("complete", function(data) {
console.log(data);
});
});