• Node08


    1、配置模板引擎

        (01)、输出什么东西       

                //view engine:视图模板引擎(以何种方式呈现给用户) => 指定输出html
              server.set('view engine', 'html');

        (02)、模板文件放在哪

             //views: 指定好的

             server.set('views', './views'); 

        (03)、哪种模板引擎

             server.engin('html', consolidate.ejs);

        (04)、接受用户请求

             //render:渲染 ,渲染的文件是1.ejs,name:是ejs文件中的属性 

                 server.get('/index', function(req, res){
                res.render('1.ejs', {name: bule});
             });

    // Nodejs代码
    const express = require('express');
    const static = require('express-static');
    const bodyParser = require('body-parser');
    const cookieParser = require('cookie-parser');
    const cookieSession = require('cookie-session');
    const consolidate = require('consolidate');
    const multer = require('multer');
    const path = require('path');
    
    var server = express();
    server.listen(8081);
    //1、解析cookie
    server.use(cookieParser('fjalsdpoasdmasdlkasdkas'));
    
    //2、使用session
    var arr = [];
    for (var i = 0; i < 100000; i++){
        arr.push('keys_b'+ Math.random());
    }
    server.use(cookieSession({name: 'zns_sess_id', keys: arr, maxAge: 20*3600*1000}));
    
    //3、post数据
    server.use(bodyParser.urlencoded({extended: false}));
    server.use(multer({dest: './www/upload'}).any());
    //4、配置模板引擎
    //01、输出什么东西
        //view engine:视图模板引擎(以何种方式呈现给用户)  =>  指定输出html
    server.set('view engine', 'html');
    //02、模板引擎放在哪
        //views: 指定好的
    server.set('views', './views');
    //03、哪种模板引擎
    server.engine('html', consolidate.ejs);
    //04、接受用户数据
        //render:渲染
    server.get('/index', function(req, res){
        if(req.session.userid){
            res.render('1.ejs', {name: bule});
        }else{
            res.render('login.ejs', {});
        }
    });
    
    //4、static数据
    server.use(static('./www'));
    <!doctype html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>Document</title>
    </head>
    <body>
        我的名字:<%= name %>
    </body>
    </html>

    2、路由   =>  router:(把不同的目录,对应到不同的模块)=> 基本用法

       (01)、创建router

    //目录1:/user/
    //1、创建路由
    var routeUser = express.Router();

       (02)、发送的内容(router内部)

    //2、发送内容,相当于访问:http://xxx.com/user/1.html
    routeUser.get('/1.html', function (req, res) {
        res.send('user1');
    });
    routeUser.get('/2.html', function (req, res) {
        res.send('user2');
    });

       (03)、添加到目录下(把router添加到server)

    //3、添加到目录下
    server.use('/user', routeUser);
  • 相关阅读:
    android&php 加密解密
    AES加解密算法在Android中的应用及Android4.2以上版本调用问题
    eclipse 中 import sun.misc.BASE64Decoder; 报错
    Java加密技术(一)——加密介绍
    android加密DESede/CBC/PKCS5Padding
    Android中的Audio播放:竞争Audio之Audio Focus的应用
    java.lang.IllegalStateException: attempt to re-open an already-closed object
    Android 性能优化的一些方法
    android.os.DeadObjectException memory near r0: 异常处理 Consumer closed input channel or an error occurred. events=0x9
    如何分析解决Android ANR
  • 原文地址:https://www.cnblogs.com/patriot/p/8038389.html
Copyright © 2020-2023  润新知