私はこの質問を見つけましたが、まだローカルファイルについて話していると思うので、私の質問には答えていないようです。
たとえば、imgur.comリンクを取得し、ノードを使用して S3 にアップロードします。knoxはこれに対応していますか、それとも何か他のものを使用する必要がありますか?
どこから始めればよいかわからない。
私はknoxを使用していませんが、公式のAWS SDK for JavaScript in Node.js を使用しています。のパラメーターに{encoding: null}
直接渡すことができるバッファー内のデータを取得するために、URL に要求を発行します。以下はaws-sdkとrequestでリモート イメージをバケットに入れる例です。Body
s3.putObject()
var AWS = require('aws-sdk');
var request = require('request');
AWS.config.loadFromPath('./config.json');
var s3 = new AWS.S3();
function put_from_url(url, bucket, key, callback) {
request({
url: url,
encoding: null
}, function(err, res, body) {
if (err)
return callback(err, res);
s3.putObject({
Bucket: bucket,
Key: key,
ContentType: res.headers['content-type'],
ContentLength: res.headers['content-length'],
Body: body // buffer
}, callback);
})
}
put_from_url('http://a0.awsstatic.com/main/images/logos/aws_logo.png', 'your_bucket', 'media/aws_logo.png', function(err, res) {
if (err)
throw err;
console.log('Uploaded data successfully!');
});