express下载创建
// 下载
npm install express express-static --save
// 创建服务
const express = require("express");
var server = express();
server.listen(8081);
server.use('/', function(req, res){
console.log(req.body);
res.end();
})
express-cookie模块
//写: cookie写入到浏览器
//读: 服务器接受浏览器带过来的cookie
//cookie 最大4k
const experss = require("express");
const cookie = require("cookie-parser");
let server = experss();
server.listen(8081);
server.use(cookie("sdfaj2212"));
server.use("/", function(request, response){
request.secret="aaa";
//设置cookie
response.cookie("key", "abc123", {signed : true});
//读取cookie
console.log(request.cookies);
console.log(request.signedCookies);
// 清除cookie
response.clearCookie("key");
response.end();
});
express-session模块
const experss = require("express");
const cookie = require("cookie-parser");
const session = require("cookie-session");
let server = experss();
server.listen(8081);
server.use(cookie("sdfaj2212"));
server.use(session({
name : "sesA",
keys : ['a'],//签名秘钥
maxAge : 1000 * 60 * 20 //cookie的有效时间
}));
server.use("/", function(request, response){
if(request.session["key"] == null){
request.session["key"] = 1;
} else {
request.session["key"]++;
}
response.end(request.session["key"].toString());
});
示例代码
import express from "express";
import consolidate from "consolidate";
import multer from "multer";
import logger from "morgan";
import fs from "fs";
import bodyParser from 'body-parser';
import cookieParser from 'cookie-parser';
import cookieSession from 'cookie-session';
import uuid from 'uuid';
import path from "path";
var app = new express();
const port = 8024;
var multerObj = multer({
dest: './public/upload'
});
app.listen(port);
//中间件
app.use(bodyParser.urlencoded({
extended: true,
limit: "500mb"
}));
app.use(bodyParser.json());
app.use(bodyParser.text());
// 配置静态资源服务器
app.use(express.static("./public/"));
//容许所有文件上传
app.use(multerObj.any());
// 日志文件
app.use(logger("dev"));
app.use(logger("combined", {
stream: fs.createWriteStream("./logs/logs.log", {
flags: 'a'
})
}));
// cookie session
app.use(cookieParser("gongyueqing"));
app.use(cookieSession({
genid: function() {
return uuid.v1();
},
maxAge: 60 * 1000 * 60,
secret: "gongyueqing"
}));
// 配置模板引擎
app.set("view engine", "html");
app.set("views", "./views/");
app.engine("html", consolidate.ejs);
// 公共的头
app.use((req, res, next) => {
if (req.url == "/favicon.ico") return;
res.set({
"Content-type": "text/html;charset=utf-8"
});
let admininfo = req.session.admininfo;
let loginpath = req.path;
if (!admininfo && loginpath != "/admin/login" && loginpath != "/admin/login_check") {
return res.redirect("/admin/login");
}
next();
});
// 路由
app.use("/admin", require("./routers/admin/adminRouter"));
// 学生管理
app.use("/student", require("./routers/student/studentRouter"));
// 系统管理
app.use("/system", require("./routers/system/systemRouter"));
// 客户端管理
app.use("/client", require("./routers/client/clientRouter"));
// 动态/周记/公告
app.use("/medium", require("./routers/medium/mediumRouter"));
// 请假/学费
app.use("/affair", require("./routers/affair/affairRouter"));
// 退出登录
app.use("/admin/logoff", (req, res, next) => {
req.session = null;
res.json({
msg: "Log off!",
status: 1
})
next();
});
console.log("http://127.0.0.1:" + port);