node的webserver模板

const express = require('express');

const swig =require('swig');

const fs = require('fs');

//创建服务器

const server = express();

 //让服务器使用中间件处理请求

//参数1:请求的url中的一段重头开始匹配路径

//npm sun start

//处理请求方式

//server.get();

//server.post();

//配置静态资源的方法

//第一个参数的值是url路径的前缀,也是路径的一段值。

//当请求的url跟参数一配置时,被express.static方法处理。静态读取资源的方式处理 

server.use('/static',express.staic('./www'));

 /*

 请求:/static/css/home.css --->(use()处理):/css/home.css--->(express.static('./www')处理):./www/css/home.css

//处理html页面请求
// 配置模板引擎
//1.配置模板存放的目录
// 参数1:关键字,配置模板存放的目录
// 参数2:目录
server.set( 'views', './htmlDir');
// 2.声明将要使用的模板引擎
// 参数1:固定字段,关键字
// 参数:引擎名字,也跟文件的后缀一致
server.set( 'view engine', 'html');
// 3.配置模板引擎
// 参数1:使用的引擎名字,固定字段,关键字
// 参数2:引擎
server.engine( 'html', swig.renderFile);
// 关闭缓存
swig.setDefaults({cache: false});

// 渲染首页
server.get( '/', (request, response) =>{
//查询数据库,页面所用到的数据
// 参数1:模板文件路径
// 参数2:模板使用的属性
response.render( 'index', {
// username: '张三'
goodslist: [
{title: '上衣', price: '299'},
{title: '鞋子', price: '499'},
{title: '袜子', price: '9.9'}
]
});
// swig.renderFile => ./www/home.html
})

/*
前后台不分离:
页面的数据由后台取得,渲染在模板上,再响应客户端
pc端

前后台分离:
页面的数据由前端发送ajax请求跟后台,取得数据后,操作dom,显示在页面
后台管理系统
移动端
*/


// server.get('/home', (request, response)=>{
// let result = fs.readFileSync('./www/home.html');
// response.end(result);
// })

// server.use('/', express.static('./www'));

// server.get('/list', (request, response)=>{
// let result = fs.readFileSync('./www/list.html');
// response.end(result);
// })



// 开启服务器
server.listen( 8888, 'localhost', (error) =>{
if(error){
console.log( '服务器出错');
} else{
console.log( '服务器启动成功,请访问:http://localhost:8080');
}
})

*/

猜你喜欢

转载自www.cnblogs.com/yunshangwuyou/p/9343186.html