S3 client upload library.
$ component install component/s3
An S3 global must be initialized with some configuration:
policy- the base64 json policysignature- the policy signaturebucketthe bucket nameaclACL such as "public-read"keyaccess key
varUpload=require('s3');vardrop=require('drop-anywhere');drop(function(err,drop){if('upload'!=drop.type)return;varfile=drop.item.file;console.log('upload %s',file.name);varuid=Math.random()*1e10|0;varupload=Upload(file,{name: uid})varprog=document.querySelector('#progress');upload.on('progress',function(e){prog.textContent=(e.percent|0)+'%';});upload.end(function(err){if(err)throwerr;console.log('upload complete %s',upload.name);console.log(upload.url);});});nameremote filename orfile.nametypecontent-type orfile.type
Events:
abortupload was abortedprogressupload in progress (e.percentetc)endupload is complete
First populate ./config.json with your credentials:
{
"key": "asdfasdfasdfasdf",
"secret": "asdfasdfasdfasdfasdfadsfasfdsfdasdf+fHgg",
"bucket": "files.example.com"
}Boot the test server:
$ node test
MIT