我正在尝试在亚马逊预签名上传 URL 上编写单元测试,该 URL 接受带有原始二进制正文的 PUT 请求。
查看 needle 和 request 库的示例,它们都使用表单数据示例。有人可以给我一个使用任一库的示例,该库将本地文件作为请求正文中的原始二进制文件发送吗?
请求库 https://github.com/request/request
针库 https://github.com/tomas/needle
var filename = 'bunny.jpg';
var url = Amazon.getUploadUrl(filename);
var data = {
file: __dirname + '/' + filename,
content_type: 'image/jpeg'
};
var file = fs.createReadStream(__dirname + '/' + filename);
var request = require('needle');
request
.put(url, data, function(err, resp) {
console.log(resp.body.toString('utf-8'));
if (resp.statusCode !== 200) {
done(new Error(resp.statusMessage));
}
else
done(err);
});