黑马程序员技术交流社区

标题: 笔记 [打印本页]

作者: 谁是谁@    时间: 2019-6-27 13:16
标题: 笔记
//1.导入模块
const express = require('express');
//2.调用方法
const app = express();
//3.通过app.get()来监听客户端
app.get('/', (req, res) => {
    res.send('ejkar');
});
//4.启动express服务器
app.listen(3000, () => {
    console.log('server running at http://127.0.0.1:3000');
})

res.send()
支持 发送 字符串 Content-Type: text/html;
支持 发送 对象 或 数组 Content-Type: application/json
支持 发送 Buffer 此时会当作文件下载;
res.sendFile()
用法1:res.sendFile(path.join(__dirname, './view/index.html'))
用法2:res.sendFile('./view/movie.html', { root: __dirname })
注意:res.sendFile() 可以向浏览器发送 静态页面;

使用 express.static() 快速托管静态资源
语法1: app.use(express.static('public'));
app.use()方法,是专门用来注册 中间件;
express.static 是express的内置中间件;
语法2:app.use('/虚拟目录', express.static('public'))

express 框架配置模板引擎渲染动态页面
安装 ejs 模板引擎npm i ejs -S
使用 app.set() 配置默认的模板引擎 app.set('view engine', 'ejs')
使用 app.set() 配置默认模板页面的存放路径 app.set('views', './views')
使用 res.render() 来渲染模板页面res.render('index.ejs', { 要渲染的数据对象 }),注意,模板页面的 后缀名,可以省略不写!

在 express 中配置 art-template
安装 两个包 cnpm i art-template express-art-template -S
自定义一个模板引擎  app.engine('自定义模板引擎的名称', 渲染函数)
将自定义的模板引擎,配置为 express 的默认模板引擎  app.set('view engine', '具体模板引擎的名称')
配置 模板页面得存放路径 app.set('views', '路径')

express中获取参数的几种形式
获取 http://127.0.0.1:3001/user?id=10&name=zs 中的查询参数:
直接使用 req.query 获取参数即可;
注意:URL 地址栏中通过 查询字符串 传递的参数,express 框架会直接解析,大家只需要使用 req.query 直接获取 URL 中 查询字符串的参数;
从URL地址中获取路径参数:
假设后台的路由是 app.get('/user/:id/:name', (req, res) => {})
假设客户端浏览器请求的URL地址为:http://127.0.0.1:3001/user/10/zs
直接使用 req.params 可以获取URL地址中传递过来的参数;
从post表单中获取提交的数据:
借助于body-parser来解析表单数据
安装:npm i body-parser -S
导入:const bodyParser = require('body-parser')
注册中间件:app.use(bodyParser.urlencoded({ extended: false }))
使用解析的数据: req.body 来访问解析出来的数据







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2