yunpan
Version:
yunpan demo
126 lines (94 loc) • 3.24 kB
JavaScript
var express = require('express');
var TheFiles = require('../common/fileState');
var sqlLogin = require('../common/sqlLogin');
var bodyParser = require('body-parser');
var router = express.Router();
var urlencodedParser = bodyParser.urlencoded({ extended: false });
router.get('/index', function (req, res) {
console.log('/index');
if(req.cookies.islogin) {
TheFiles.init(function (info) {
res.render('index',info);
})
} else {
res.redirect('/toLogin');
}
});
router.get('/toLogin',function(req,res){
res.render('login',{});
})
router.post('/login',urlencodedParser, function (req, res) {
var info = {
"username":req.body.username,
"password":req.body.password
};
sqlLogin.login(info).then( () => {
res.cookie('islogin','true', {maxAge: 60 * 60 * 1000});
res.end(JSON.stringify({code : 1,msg : '登录成功'}));
}).catch( () => {
res.end(JSON.stringify({code : 0,msg : '账号或密码错误'}));
});
});
router.post('/del', urlencodedParser , function(req,res) {
let dir = req.body.dir;
let file = req.body.file;
if( !dir || !file) {
res.send({code : false, msg : '找不到对应的文件'});
}
let path = dir + file;
TheFiles.del(path).then(function(){
res.send({code : true, msg : path});
}).catch(function(){
res.send({code : false, msg : '操作错误'});
})
});
router.post('/copy', urlencodedParser , function(req,res) {
let src = req.body.src;
let dst = req.body.dst;
if( !dst || !src) {
res.send({code : false, msg : '找不到对应的文件'});
}
TheFiles.copy(dst , src).then(function(info){
res.send({code : true, msg : src});
}).catch(function(){
res.send({code : false, msg : '操作错误'});
})
});
router.post('/rename', urlencodedParser , function(req,res) {
let newPath = req.body.newPath;
let oldPath = req.body.oldPath;
if( !oldPath) {
res.send({code : false, msg : '找不到对应的文件'});
}
if( !newPath) {
res.send({code : false, msg : '文件名不能为空'});
}
TheFiles.rename(oldPath , newPath).then(function(info){
res.send({code : true, msg : '操作完成'});
}).catch(function(){
res.send({code : false, msg : '操作错误'});
})
});
router.post('/createFile', urlencodedParser , function(req,res) {
let newPath = req.body.newPath;
if( !newPath) {
res.send({code : false, msg : '文件名不能为空'});
}
TheFiles.createFile( newPath ).then(function(info){
res.send({code : true, msg : '操作完成'});
}).catch(function(){
res.send({code : false, msg : '操作错误'});
})
});
router.post('/getfiles', urlencodedParser , function(req,res) {
let path = req.body.path;
if( !path) {
res.send({code : false, msg : '找不到对应的文件'});
}
TheFiles.getfiles(path).then(function(list){
res.send({code : true, msg : '获取成功' , data : list});
}).catch(function(){
res.send({code : false, msg : '操作错误'});
})
});
module.exports = router;