Express简介
Express 是一个简洁而灵活的 node.js Web应用框架, 提供了一系列强大特性帮助你创建各种 Web 应用,和丰富的 HTTP 工具。
express框架核心:
- 可以设置中间件来响应http请求
- 定义了路由表用于执行不同的 HTTP 请求动作。
- 可以通过向模板传递参数来动态渲染 HTML 页面。
express的安装
npm install express --save
express运行其他几个重要模块安装
- body-parser - node.js 中间件,用于处理 JSON, Raw, Text 和 URL 编码的数据。
npm install body-parser --save
- cookie-parser - 这就是一个解析Cookie的工具。通过req.cookies可以取到传过来的cookie,并把它们转成对象。
cnpm install cookie-parser --save
- multer - node.js 中间件,用于处理 enctype=“multipart/form-data”(设置表单的MIME编码)的表单数据。
cnpm install multer --save
二、express实例
var express = require('express');
var app = express();
app.get('/', function (req, res) {
res.send('Hello Express');
})
var server = app.listen(3000)
三、请求和响应
Express 应用使用回调函数的参数: request 和 response 对象来处理请求和响应的数据。
app.get((req,res)=>{
//要处理的执行代码
})
request 和 response 对象的具体介绍:
- req.app:当callback为外部文件时,用req.app访问express的实例
- req.body / req.cookies:获得「请求主体」/ Cookies
- req.method : 访问方式
- req.query : get数据
- req.path:获取请求路径
- req.route:获取当前匹配的路由
- req.get():获取指定的HTTP请求头
- res.get():返回指定的HTTP头
- res.json():传送JSON响应
- res.jsonp():传送JSONP响应
- res.send():传送HTTP响应
中间件
中间件使用use
来注册
app.use(express.static('路径'))
//express.static 静态资源处理
四、Express应用生成器
Express 是一个简洁而灵活的 node.js Web应用框架,通过应用生成器工具 express-generator 可以快速创建一个应用的骨架。
express项目文件安装
npm install express-generator -g
创建方式:
express --view=ejs 项目名
node.js 8.0以上版本支持npx下载(手动创建文件,只能使用一次,)
npx insatll express-generator --view=ejs
express项目结构详解
- app.js :核心服务器文件,中间件的使用和注册
- bin : 引入app.js做一些原生的node设置
- node-modules :依赖包,一般创建完文件,先执行npm install 下载
- Package.json : 各种依赖包配置
- Package-lock.json : 各种依赖包的版本
- Public :静态目录
- Routes :路由配置
- Views :静态公用界面
五、EJS
EJS 是一套简单的模板语言,帮你利用普通的 JavaScript 代码生成 HTML 页面。
ejs的安装下载:
npm install ejs
ejs标签的含义:
<%
‘脚本’ 标签,用于流程控制,无输出。<%_
删除其前面的空格符<%=
输出数据到模板(输出是转义 HTML 标签)<%-
输出非转义的数据到模板<%#
注释标签,不执行、不输出内容<%%
输出字符串 ‘<%’%>
一般结束标签-%>
删除紧随其后的换行符_%>
将结束标签后面的空格符删除
包含(include)
通过 include 指令将相对于模板路径中的模板片段包含进来。
标签(<%-)
用于 include 指令,避免对输出的 HTML 代码做转义处理
<%- include('user/show', {user: user}); %>