我想要做的是将此curl
命令转换为Node.js代码
curl -X PUT -H "Content-Type:" --data-binary @slug.tgz "https://s3-external-1.amazonaws.com/herokuslugs/heroku.com/v1/xyz"
我一直在摆弄Node的内置https.request
和请求库超过一个小时,但仍然没有想到这一点.
我之前遇到过这个问题.我通过改变来fs.createReadStream
实现它fs.readFile
.这是我所做的快速示例.
fs.readFile('@slug.tgz', function (err, data) { if (err) return console.error(err); options = { url: 'https://s3-external-1.amazonaws.com/herokuslugs/heroku.com/v1/xyz', body: data } request.put(options, function (err, message, data) { if (err) return console.error(err); console.log(data) }); });
当我使用时,fs.createReadStream
我收到亚马逊的错误.还要确保首先通过platfrom API创建一个slug并使用url
响应中的博客.