• express工程的优化和请求参数的处理


    1、让工程自动刷新

    在Express的默认工程中,ejs, jade等模板的改变会立刻被渲染到浏览器中,但是js的改变不能立即刷新。这时候我们要用到一些自动刷新工具,

    如 nodemon, supervisor等

    我用的是nodemon,

    我用了nodemon,因为我是用 express-generator 生成的Express工程, 所以这样配置

    1.1

    安装 nodemon依赖

    npm install nodemon

    1.2修改配置

    在package.json的配置文件中修改工程启动方法:

    修改前

    "scripts": {
      "start": "node ./bin/www"
    },

    修改后

    "scripts": {
      "start": "node ./bin/www",
      "auto": "nodemon ./bin/www"
    },

    然后用新命令重新启动工程

    修改前

    npm start

    修改后

    npm run auto

    有的同学说需要 把 exports.moduls = app 注释掉。我发现没注释也没关系

    2、路由模块拆分

    Express-generator已经帮我们做了很好的示范

    假如我们有一个新的路由模块 api

    我们这样做:

    2.1 在routes目录下,新建一个路由文件 api.js

    里面这样写:

    var express = require('express');
    var router = express.Router();
    // var bodyParser = require('body-parser'); 新版本废弃
    
    /* GET home page. */
    router.get('/', function(req, res, next) {
        // res.render('index', { title: 'Express' });
        var msg = "connect to api success!";
        res.send(msg);
    });
    
    router.get('/login/:username/:password',function (req, res, next) {
        var jss = {
            "username" : req.params.username,
            "password" : req.params.password
        };
        console.log(jss);
        res.send(jss);
    });
    module.exports = router;

    再在app.js里面做引用

    var indexRouter = require('./routes/index');
    var usersRouter = require('./routes/users');
    var api = require('./routes/api');//新增
    
    app.use('/', indexRouter);
    app.use('/users', usersRouter);
    app.use('/api', api);//新增
  • 相关阅读:
    Linux常用命令解释
    RAID 10 配置流程
    VMware workstation Windows 10虚拟机安装步骤
    yum仓库配置
    vi 常用命令
    Linux设备驱动动态插入内核与直接集成到内核方式的利弊分析
    常用的Linux命令行文本处理工具总结
    CentOS使用总结(不断更新)
    vsftpd出现“Response: 500 OOPS: cannot change directory”解决方法
    NFS共享服务挂载时出现“access denied by server while mounting”的解决方法
  • 原文地址:https://www.cnblogs.com/wjw-blog/p/9786441.html
Copyright © 2020-2023  润新知