nodejs express知识点

  • express是一个nodejs的框架

如何使用

npm init 

npm install  express -S

index.js
  const express = require('express')
  // 创建一个应用程序
  const app = express()

  app.get('/home', (req, res)=>{
    res.send('hello node')
  })
  app.post('/home', (req,res)=>{
    res.send('内容')
  })

  app.listen(3000, ()=>{ console.log('启动成功了') })

  中间件

nodemon 解决服务器热加载问题

npm i nodemon -g

运行 nodemon  文件

建议:
  package.json
    script:{
      "start": nodemon index.js
    }
  npm run start 

设置 路由 请求路由 携带参数 (参数解析)

1,get请求 获取 商品列表数据
  cateId  指定  你要 获取 哪个分类下的商品
  current 哪一页数据
  pageSize 一页多少条
  order 事件 销量  价格

后端路由 解析 参数

解析get请求传参

app.get('/home', (req,res)=>{
  // req.query 就是get请求的参数  解析成对象
  res.send('get请求')
})

http://localhost:3000/home?current=1&pageSize=10

req.query
  {
    current: '1',
    pageSize: '10'
  }

解析post请求

post
请求是在请求体 body 携带
需要设置 请求格式
"content-type":"x-www-form-urlencoded"
"content-type":"multipart-formdata"  //上传文件
"content-type":"application/json"

post 请求 body 请求参数 express库默认没有这个功能

中间件 渐进式框架(核心包 只有基础功能 核心包 体积特别小)

中间件 可以往核心包增加 其他的功能 (第三方插件)

如何使用中间件

app.use([url,]中间件)
中间件其实就是一个函数
const middleware1 = (req,res,next)=>{

}
分类:
  全局中间件(所有请求都拦截)
  app.use(中间件)
  app.use('/',中间件)
  局部中间件(只拦截特定地址的请求)
  app.use("/a",中间件)  

body-parser

安装
npm i body-parser -S

const bodyParser = require('body-parser')
// 解析post 传递的 x-www-form-urlencoded
app.use(bodyParser.urlencoded({extended: false}))

// 解析post 传的 json格式参数
app.use(bodyParser.json())

后端返回给前端 格式 规范 restfulApi

规定后端
{
  code: 0, // 自定义错误编码
  msg: "登录成功",
  data: []
}

规定前端:

获取数据  get
提交数据  post
更新数据  put
删除数据  delete

MVC

m model 数据
v view 视图(html)
c controller 控制器 核心业务代码

路由中间件


const router = require('express').Router();
// router 相当于小型的 app const app = express()
// router.get() .post() .use()

router.get('/home', (req,res)=>{
  res.send('我是home')
})

app.use(router)

静态资源中间件

功能:以服务器的地址来访问 服务器中的资源

static中间件


app.use(express.static('./public'))
public
  imgs
    a.jpg

locahost:3000/imgs/a.jpg 找到这张图片

app.use("/static",express.static('./public'))
public
  imgs
    a.jpg
localhost:3000/static/imgs/a.jpg
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值