Node express的简单使用

Node express的简单使用(笔记)

第一步,安装express模块:

npm install express --save

第二步,引入模块

const express = require("express")

第三步,创建实例

const app = express();

第四部,处理url请求

//拦截处理"/"的get请求
app.get("/",(req,res)=>{
	//res.send可以解释:对象,字符串,布尔类型,布尔,HTML片段会会自动解析
	//send方法和end方法接收的数据类型不同,end方法只能接收字符串和buffer
	res.send("hello world!")
})

第五步,启动服务开始监听

app.listen(300,(error)=>{
	if(error){
		console.log("服务启动失败!")
	}else{
		console.log("服务启动成功!")
	}
})

处理多个请求路径

app.get("/",()=>{})
app.get("/login",()=>{})

接收get请求的参数

//客户端请求:127.0.0.1:3000?userName=tom
app.get("/",(req,res)=>{
·	let {userName}=req.query
	res.send(`你输入的用户名是:${userName}`) //你输入的用户名是:tom
})

接收POST请求

app.post("/login",(req,res)=>{
	res.send("收到一个POST请求")
})

同时监听POST请求和GET请求

app.use("/reg",(req,res)=>{
	res.send("收到一个注册请求")
})

获取post请求的参数

1、安装body-parser

npm install body-parser --save

2、引入模块

const bodyParser = require("body-parser")

3、调用app.use()使用中间件

//让中间件帮我们处理
app.use(bodyParser.urlencoded())

4、接收请求

app.post("/login",(req,res)=>{
	//使用中间件处理的数据会存放到req.body中
	consolse.log(req.body)
})

设置静态资源托管

假设目录结构是:
public
      |__index.html
image
      |__img.jpg

通过express.static()来设置静态目录,可以设置多个目录,express.static()是框架内置的中间件,可以直接使用

//使用绝对路径
let public_dir = path.join(__dirname,'public')
app.use(express.static(public_dir ))
//也可以使用相对路径
app.use(express.static('image'))

访问地址为:
http://127.0.0.1/index.html,即可访问到public下的index.html文件
http://127.0.0.1/img.jpg,即可访问到image下的img.jpg文件

静态资源,使用虚拟路径

app.use('/static',express.static('image'))

访问地址为:
http://127.0.0.1/static/img.jpg,即可访问到image下的img.jpg文件

404处理

异常处理中间件,要放在所有中间件的最后面

app.use((req,res,next)=>{
	res.status(404).send("<h1>访问页面不存在!</h1>")
})

异常处理

//异常处理中间件,要放在所有正中件的最后面
app.use((err,req,res,next)=>{
	res.status(500).send("<h1>服务器异常!</h1>")
})

网页重定向

//访问不存在的页面时让浏览器跳转到主页
app.use((req,res,next)=>{
	res.redirect('/')
})
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值