fetch-upload-s3

fetch an asset (a picture for instance) from a remote server and upload it to S3 (and remove the local copy). Or upload a local file on S3

fetch-upload-s3

Fetches an asset (picture for instance) from a remote URL (or a local file) and uploads it to Amazon S3.

npm install fetch-upload-s3

create an aws_config.json file with the following fields. You can put whatever region you like.

{
  "accessKeyId": "YOUR AWS ACCESS KEY",
  "secretAccessKey": "SECRET OF YOUR AWS ACCESS KEY",
  "region": "eu-west-1"
}

You can use different bucket name depending on your environment.

var FUS3 = require('fetch-upload-s3');
 
var fus3 = new FUS3('my_aws_bucket');
 
// For fetch url : 
fus3.init(function(){
  fus3.do('http://nodejs.org/images/logo.png', 'my_key', function(errdata){
    console.log('file uploaded to S3!');
    console.log(data);
  });
});
 
// for upload File : 
fus3.init(function(){
  fus3.uploadFile(absoluteFilePath, 'my_key', 
    function(errdata){
    console.log('file uploaded to S3!');
    console.log(data);
  });
});

A temp folder './.tmp/fetch_upload_s3' is used as a proxy. Temporary and source files are deleted locally as soon as they have been uploaded to S3