代码拉取完成,页面将自动刷新
//同城约 后台
const express=require('express');
const expressSession=require('express-session');
const compression=require('compression'); //开启gzip压缩
const bodyParser=require('body-parser'); //post方式数值
const cookieParser=require('cookie-parser');
const consolidate=require('consolidate');
const session=require('connect-session');
const MysqlStore=require('connect-mysql')(expressSession);
const fs=require('fs');
const path=require('path');
const { pool } = require('./backstage/db.js');
const options = {
pool: pool,
cleanup:false
}
//创建中间件服务器
const app=express();
const server = require('http').createServer(app);
server.listen(8082,(err)=>{
if(err)
throw new err;
else
console.log('成功监听8082端口。');
});
app.use(compression());
//获取数据请求 post方式
app.use(bodyParser.urlencoded({
extended:true,
maxAge:5*1024*1024,
limit: '10mb'
}));
//获取文件 post方式
//cookie、session
app.use(cookieParser('fsafgs4324rfrt34edfg5'));//签名
(function(){
var sessionArr=[];
for(var i=0;i<100000;i++)
sessionArr.push('key_'+Math.random().toString().replace('.',''));
app.use(expressSession({
secret:'fsafgs4324rfrt34edfg5',
name:'my_session_id',
cookie:{maxAge:24*3600*1000},
resave:false,
saveUninitialized:true,
keys:sessionArr,
store: new MysqlStore(options)
}));//24小时
})();
//清除过期的session
function sessionCleanup(){
pool.getConnection((err,connection)=>{
if(err){
console.log(err);
throw err;
}else{
var sql=`DELETE from sessions WHERE expires>0 AND expires<UNIX_TIMESTAMP()`;
connection.query(sql,(err)=>{
connection.release();
if(err){
console.log(err);
throw err;
}
});
}
});
}
setInterval(sessionCleanup, 1800000);
//3.模版
//输出什么东西
app.set('view engine','html');
//模版文件放在哪儿
app.set('views','./web/dist');
//哪种模版引擎
app.engine('html',consolidate.ejs);
//获取聊天
app.get('/msg/home', (req,res)=>{
res.redirect('/');
})
//route
app.use('/api',require('./backstage/route/web/index.js')());
//静态文件放置位置,即根目录
app.use(express.static('./web/dist'));
/**
* Socket.io
* **/
require('./backstage/socket/index')(server);
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。