/
var
/
www
/
myprog.com.ua
/
server
/
node
/
www
/
/var/www/myprog.com.ua/server/node/www
mkdir
upload
Name
Size
Mode
Actions
call/
-
0755
rm
chat/
-
0755
rm
log/
-
0755
rm
status/
-
0755
rm
index.js
809
0644
edit
dl
rm
web_server.js
4617
0644
edit
dl
rm
Edit:
/var/www/myprog.com.ua/server/node/www/web_server.js
(4617B)
let _self; const Core = require('../core'); const User = require('../objects/user'); const bodyParser = require('body-parser') class WebServer { constructor(core, app, io) { if (!_self) { _self = this; } this.app = app; this.core = core; this.io = io; return _self; } run() { // HTTP перенести _self.app.use( bodyParser.json() ); // to support JSON-encoded bodies _self.app.use(bodyParser.urlencoded({ // to support URL-encoded bodies extended: true })); _self.app.get('/', (req, res) => { if (global.config.ssl == 1) { res.send('Doncode Server is running on port SSL ' + global.config.node_port_ssl); }else{ res.send('Doncode Server is running on port ' + global.config.node_port); } }); _self.app.get('/api', (req, res) => { let body = ''; body += '<pre>ERRORS: '+"\n"; body += '0: OK'+"\n"; body += '101: Login error'+"\n"; body += "\n"+'METHODS:'+"\n"; body += '/login POST: login, password / RETURN JSON:{"error":"0";"key":"md5_key"}'+"\n"; res.send(body); }); _self.app.post('/login', (req, res) => { let body = ''; let login = req.body.login; let pass = req.body.password; _self.core.service_users.login(login,pass).then((user) => { if (user instanceof User) { body = '{"error":"0","key":"'+user.get_key()+'"}'; res.send(body); } else { console.debug("WsServer::login()::error: " + login); body = '{"error":"101","error_msg":"Login incorrect"}'; res.send(body); } }); }); _self.app.get('/status/all', (req, res) => { let sessions = _self.core.sessions_manager.get_sessions(); let socks = _self.core.sessions_manager.get_sockets(); var n = 1; var body = "<pre>Sessions " + Object.keys(sessions).length + "\n"; for (var i in sessions) { switch (sessions[i].type) { case "operator": body += "[" + i + "] " + sessions[i].type + ": " + sessions[i].user.name + " client_id=" + sessions[i].user.id + " client_key=" + sessions[i].key + "\n" break case "driver": body += "[" + i + "] " + sessions[i].type + ": " + sessions[i].user.name + " client_id=" + sessions[i].user.id + " client_key=" + sessions[i].key + "\n" break case "system": body += "[" + i + "]" + sessions[i].type + ": " + " client_id=" + sessions[i].user.id + " client_key=" + sessions[i].key + "\n" break default: body += "[" + i + "] " + sessions[i].user.name + " client_id=" + sessions[i].user.id + " client_key=" + sessions[i].key + " type=" + sessions[i].type + "\n" } //console.log(c+': '+clients[c]); //arr.push(clients[c].user); } body += "\nSocks " + Object.keys(socks).length + "\n" for (var c in socks) { body += "[" + c + "] client_key=" + socks[c] + " type=" + sessions[c].type + " ver=" + sessions[c].ver + "\n" //body += "[" + c + "] client_key=" + socks[c] + " type=" + c.type +"\n" } body += "\nChat rooms: " + Object.keys(_self.io.sockets.adapter.rooms).length + "\n" for (var c in _self.io.sockets.adapter.rooms) { //console.log(io.sockets.adapter.rooms[c]) body += "[" + c + "] " + _self.io.sockets.adapter.rooms[c].length + " users\n" } body += "<script>setTimeout(function upd(){ location.reload(); setTimeout(upd,5000)}, 5000)</script>"; //console.log(io.sockets.in(WHO.DRIVER.VALUE)) res.send(body); // res.json(arr) }) } } module.exports = WebServer;
Save
cmd:
run