const fs = require('fs'); const express = require('express'); const crypto = require('crypto'); const session = require('express-session'); const FileStore = require('session-file-store')(session); const http = require('http'); const app = express(); if(!fs.existsSync('repo')) fs.mkdirSync('repo'); if(!fs.existsSync('repo/secret')){ secret = crypto.randomBytes(35).toString('hex'); fs.writeFileSync('repo/secret', secret); }else{ secret = fs.readFileSync('repo/secret'); } if(fs.existsSync('repo/credentials')){ credString = fs.readFileSync('repo/credentials'); credentials = JSON.parse(credString); } app.use(session({ secret: secret.toString(), saveUninitialized:false, resave:false, //cookie: {maxAge: none} store:new FileStore() })); var logString; function report(str){ console.log(str); logString = logString.concat('\n', str); } function addUser(username, password){ var user = { 'username': username, 'pass': crypto.createHash('sha256').update(password).digest('hex') }; credentials.push(user); } app.get('/', (request, response) => { }); const server = http.createServer(app); server.listen(8881);