added ability to upload files

This commit is contained in:
coderaiser 2013-02-25 07:22:37 -05:00
parent 2c576dd3b7
commit 4a109f99bb
3 changed files with 53 additions and 31 deletions

View file

@ -174,6 +174,8 @@ for now it's much simplier.
* Totaly refactored and leave in commander.js just
generation of json of directory listing.
* Added ability to upload files.
2012.12.12, Version 0.1.8

View file

@ -1,7 +1,7 @@
var CloudFunc, exports;
(function(){
"use strict";
'use strict';
/**
* Модуль, содержащий функции, которые

View file

@ -37,17 +37,12 @@
if( Util.isContainStr(lUrl, lAPIURL) ){
lRet = true;
getBody(lReq, function(pBody){
var lCommand = Util.removeStr(lUrl, lAPIURL);
getData({
command : lCommand,
method : lMethod,
body : pBody,
request : lReq,
response : lRes
});
var lCommand = Util.removeStr(lUrl, lAPIURL);
getData({
command : lCommand,
method : lMethod,
request : lReq,
response : lRes
});
}
@ -137,18 +132,32 @@
break;
case 'PUT':
var lCmd = 'mkdir ' + p.Name;
main.child_process.exec(lCmd, function(pError, pStdout, pStderr){
var lError = pError || pStderr;
if(!lError){
pParams.data = pStdout;
main.sendResponse(pParams);
}
else
main.sendError(pParams, lError);
});
console.log(p.request.url);
var lQuery = main.getQuery(p.request);
p.name = Util.removeStr(p.name, '?dir');
lRet = true;
if(lQuery === 'dir')
fs.mkdir(p.name, function(pError){
if(!pError)
main.sendResponse(pParams, 'Folder ' + p.name + ' created.');
else
main.sendError(pParams, pError);
});
else{
var lWriteStream = fs.createWriteStream(p.name);
lWriteStream.on('error', function(pError){
console.log(pError);
main.sendError(pParams, pError);
});
p.request.on('end', function(){
main.sendResponse(pParams, 'file ' + p.name + ' created');
});
//p.request.pipe(process.stdout);
p.request.pipe(lWriteStream);
}
break;
}
}
@ -195,18 +204,19 @@
var lResult = {error: 'command not found'},
lCmd = pParams.command,
lBody = pParams.body,
lRes = pParams.response;
lRes = pParams.response,
lReq = pParams.request;
switch(lCmd){
case 'auth':
main.auth(lBody, function(pTocken){
send({
response: lRes,
data: pTocken
getBody(lReq, function(pBody){
main.auth(pBody, function(pTocken){
send({
response: lRes,
data: pTocken
});
});
});
lResult = false;
break;
case 'read':
@ -217,9 +227,19 @@
pParams.name = lFiles;
main.sendFile(pParams);
lResult = null;
}
break;
case 'cmd':
main.child_process.exec(lCmd, function(pError, pStdout, pStderr){
var lError = pError || pStderr;
if(!lError){
pParams.data = pStdout;
main.sendResponse(pParams);
}
else
main.sendError(pParams, lError);
});
break;
}