0

ファイルを request.js から s3 に直接パイプしようとしています。以下のコードは、私が把握できた最も近いものです。実行されますが、s3 で終了するファイルは 0 バイトです。私は何を間違えていますか?

var request = require('request');
var AWS = require('aws-sdk');
var s3 = new AWS.S3();

request('https://placekitten.com/g/2000/2000')
    .on('response', function(response) {
        response.on('data', function(data) {
            // this is getting called
            console.log(data.length);
        });

        s3.upload({
            Body: response,
            Bucket: 'myBucket'
            Key: 'foo.jpg',
            // if ContentLength is set, the request just seems to hang?
            // ContentLength: parseInt(response.headers['content-length']),
        }, function(err, data) {
            // no error, but zero byte file
            console.log(err, data);
        });
    });

ネイティブの http/https モジュールを使用する簡単な方法があれば、それも問題ありません。

4

1 に答える 1