express

一、安装express

npm install -g express-generator
项目结构

image.png

静态资源存放在public文件夹下

二、初始化项目

express my_app

三、新建route.js

let users = [
    {username: 'fzy', password: '0000', age: 23, gender: 'male'},
    {username: 'hql', password: '1111', age: 23, gender: 'male'},
    {username: 'zsq', password: '2222', age: 21, gender: 'male'},
    {username: 'peter', password: '3333', age: 23, gender: 'male'},
    {username: 'julie', password: '4444', age: 23, gender: 'female'},
];
module.exports = function (app) {
    //================users用户列表begin=================
    app.get('/users', (req, res) => {
        let params = req.query;
        let username = params['username'];
        console.log('username:', username);
        if (username === '') {
            res.send(users);
            return;
        }
        let userArr = [];
        for (let i = 0; i < users.length; i++) {
            if (users[i].username === username) {
                userArr.push(users[i])
            }
        }
        res.send(userArr);
    });
    app.get('/del', (req, res) => {
        let params = req.query;
        let username = params['username'];
        console.log(username);
        for (let i = 0; i < users.length; i++) {
            if (users[i].username === username) {
                users.splice(i, 1);
            }
        }
        res.send({code: 0, status: 'success', message: 'Removed successfully', data: ''});
    });
    //================users用户列表end=================
    //================新建用户begin=================
    app.post('/create', (req, res) => {
        console.log(req.body);
        users.push(req.body);
        res.send({code: 0, status: 'success', message: 'Created successfully', data: ''});
    });
    //================新建用户end=================
    //================修改用户begin=================
    app.post('/update', (req, res) => {
        let currentUser = req.body;
        for (let i = 0; i < users.length; i++) {
            console.log('currentUser.username: ' + currentUser.username);
            console.log('users[' + i + '].username: ' + users[i].username);
            console.log("index: " + i);
            if (currentUser.username === users[i].username) {
                users[i] = currentUser;
                break
            }
        }
        res.send({code: 0, status: 'success', message: 'Updated successfully', data: ''});
    });
    //================修改用户end=================
    app.get('/login', (req, res) => {
        let params = req.query;
        let username = params['username'];
        let password = params['password'];
        let flag = false;
        users.forEach(user => {
            if (user.username === username && user.password !== password) {
                flag = true;
                res.send('

密码不正确

'); } else if (user.username === username && user.password === password) { res.send('

登陆成功

'); } }); if (!flag) { res.send('

此用户不存在

'); } }); app.post('/login', (req, res) => { let username = req.body.username; let password = req.body.password; let flag = false; users.forEach(user => { if (user.username === username && user.password !== password) { flag = true; res.send({status: '0', msg: '密码不正确', data: ''}); } else if (user.username === username && user.password === password) { res.send({status: '2', msg: '登陆成功', data: ''}); } }); if (!flag) { res.send({status: '0', msg: '此用户不存在', data: ''}); } res.send({status: '2', msg: '登陆成功', data: ''}); }); };

四、修改app.js

let createError = require('http-errors');
let express = require('express');
let path = require('path');
let cookieParser = require('cookie-parser');
let logger = require('morgan');
let routers = require('./route');
let app = express();

// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');

app.use(logger('dev'));
app.use(express.json());
app.use(express.urlencoded({extended: false}));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
routers(app);

// catch 404 and forward to error handler
app.use(function (req, res, next) {
    next(createError(404));
});

// error handler
app.use(function (err, req, res, next) {
    // set locals, only providing error in development
    res.locals.message = err.message;
    res.locals.error = req.app.get('env') === 'development' ? err : {};

    // render the error page
    res.status(err.status || 500);
    res.render('error');
});

app.listen(3000);

你可能感兴趣的:(express)