express是什么
- express是Node.js的一个服务器框架。
- express是一个Node.js的模块。
express()
定义:
-
Express()
是该框架的核心函数。 -
express()
用于创建一个APP( Node.js + Express )。 -
express()
函数是一个顶级函数。
语法
const express = require(`express`) //引入模块
const app = express() //暴露函数 成为顶级函数
express方法
- express.json()
- express.sta
- express.
- express.
返回值:
示例
app.get()
定义:通过回调函数处理GET请求。
官方:通过回调函数把请求路由到指定路径。
语法
app.get(path,callback)
app.get('请求地址',回调函数)
app.get(' / ',(req , res)=>{
console.log(req) // req 就是Node.js的 request 对象
console.log(res) // res 就是Node.js的 responset 对象
})
返回值:
示例
app.use
定义:在指定路径上挂载中间件函数。
语法
app.use( [ paht, ] callback [ ,callback...] )
app.use('路径',回调函数)
app.use()
app.use()
返回值:
示例
app.listen()
定义:用于为app绑定监听,监听主机端口是否有请求进来。此方法与Node的http.Server.listen()相同。
语法
返回值:
示例
res.send()
定义:发送text/plain || text/html (发送值:字符串,对象,buffer)
res.sendFile() //静态文件
定义:按照指定路径发送文件(响应)数据 (作为响应数据)。(发送文件:html、text)
- 根据文件扩展名设置Content-Type
语法
res.sendFile(path [, options] [, fn])
res.sendFile('路径' , {选项对象} , 回调函数 )
- path:必须是一个绝对路径
- path:如果是一个相对路径,那么
返回值:
示例
options
定义:就是选项对象
- 它是一个对象
- 对象里存储的是一些属性参数。
{
}
返回值:
示例
res.status()
定义:设置响应的HTTP状态码。支持链式调用
语法
res.status(403).end()
res.status(400).send('Bad Request')
res.status(404).sendFile('/absolute/path/to/404.png')
返回值:返回响应对象
示例
ejs是什么
- ejs是Embedded JavaScript templating的缩写
- ejs的意思:嵌入式JS的HTML模板(不是嵌入到<script>里。)
- ejs是面向服务端的。
- ejs是在服务端把js嵌入到html页面里
- 服务端解析ejs语法 => 翻译成html
- 把编译后的html返给浏览器
- ejs实现的功能类似于php实现的功能:动态渲染数据到HTML页面里。 - JS是面向浏览器端的脚步语言。
- PHP是面向服务端的脚步语言。
- 为什么能够解析PHP,因为服务端安装了PHP软件。
//ejs代码
<ul>
<% users.forEach(function(user){ %>
<%- include('user/show', {user: user}); %>
<% }); %>
</ul>
定义:
语法
返回值:
示例
app.set()
定义:1.存储自定义值 2.配置服务器行为
语法
返回值:返回响应对象
示例
res.render() //动态模板
定义:用于编译ejs模板,把编译后的html(使用编译的第三方模板设置响应数据)
语法
res.render('视图名称',{选项对象})
res.redirect()
定义:重定向(也就是跳转)
语法
res.render(view[,locals][,callback])
res.render( 视图,{选项对象},回调函数 )
- 选项对象:
返回值:返回响应对象
示例
EJS的语法
- <% 嵌入脚本的开始
- %> 嵌入脚本的结束
- <%= 出计算值
- <%- 直接输出