2015年9月24日 星期四

googld storage nodes example pipe gcloud

var http = require('http'),
fs = require('fs'),
url = require("url"),
path = require("path");


var gcloud = require('gcloud');
var storage;

storage = gcloud.storage({
  keyFilename: 'YOUR_JSON_KEY.json',
  projectId: 'YOUR_PROJECT_ID'
});


 http.createServer(function(request,response){

response.writeHead(200);

   var bucket = storage.bucket('peterbucket');

   var filename=url.parse(request.url).pathname.replace("/","");

request.pipe(bucket.file(filename).createWriteStream());

var fileSize = request.headers['content-length'];
var uploadedBytes = 0 ;

request.on('data',function(d){

uploadedBytes += d.length;
var p = (uploadedBytes/fileSize) * 100;
response.write("Uploading " + parseInt(p)+ " %\n");

});

request.on('end',function(){
response.end("File Upload Complete");
});

}).listen(8080,function(){

console.log("server started");
 });



1. YOUR_JSON_KEY.json


2. package.json

{
  "name": "NAME",
  "version": "0.0.1",
  "dependencies": {
    "gcloud": "^0.16.0",
  }
}

3. RUN IT
curl -v --upload-file  "FILE PATH" http://localhost:8080/

3. CHECK IT OUT ON YOUR GOOGLE STORAGE




沒有留言:

張貼留言