使用express框架获取getpost请求的参数

代码展示:

  • 获取get和post的请求参数.js
// express框架 - 获取get和post的请求参数

// 引入express框架
const express = require('express')

// 创建app服务器
const app = express()

// 配置解析post参数的两个内置中间件
// 通过express.json()这个中间件,解析表单中的JSON格式的数据
app.use(express.json())//解析post的请求题参数(json格式)
// 通过express.urlencoded()这个中间件,来解析表单中的url-encoded格式的数据
app.use(express.urlencoded({extended:false}))//解析post的请求题参数(encoded格式)

// 1.发送请求get请求获取请求参数
app.get('/login',(req,res)=>{
// 现在我们可以直接使用express的内置语法来获取get请求的参数
console.log(req.query);//使用req.query来获取get请求参数
res.send({"ok":1})
})

// 2.发送post请求获取请求参数
app.post('/login',(req , res)=>{
// 现在我们可以直接使用express的内置语法来获取post请求的参数
console.log(req.body);//使用req.body来获取post请求参数
res.send({"ok":1})
})

app.listen(3000 , ()=>{
console.log('服务器已启动! 端口3000正在监听...');
})

结果展示:

get请求

  • 发送请求
    image

  • 终端输出结果
    image

post请求

  • 发送请求(两种格式:jsonencoding)
    image

  • 终端输出结果
    image

托管静态资源(内置中间件)

  • 通过 Express 内置的 express.static 可以方便地托管静态文件,例如图片、CSSJavaScript 文件等。
  • 将静态资源文件所在的目录作为参数传递给 express.static 中间件就可以提供静态资源文件的访问了。例如,假设在 public 目录放置了图片、CSSJavaScript 文件,你就可以:
  1. 直接使用express.static('文件夹名(目录名)')
//使用app.use来使用这个内置的中间件
app.use(express.static('public'))
  • 随后你就可以在浏览器中输入对应的url来访问对应的静态资源了
//切记,这种方法是不需要在url中填该静态资源的文件夹名的
http://localhost:3000/images/kitten.jpg
http://localhost:3000/css/style.css
http://localhost:3000/js/app.js
http://localhost:3000/images/bg.png
http://localhost:3000/hello.html
  1. 使用注册中间件的方式:express.static('/文件夹名(目录名)','文件夹名(目录名)')
app.use('/static', express.static('public'))
  • 现在,你就可以通过带有 “/static” 前缀的地址来访问 public 目录下面的文件了。
http://localhost:3000/static/images/kitten.jpg
http://localhost:3000/static/css/style.css
http://localhost:3000/static/js/app.js
http://localhost:3000/static/images/bg.png
http://localhost:3000/static/hello.html

代码展示:

  • 路径关系
    image

  • index.js(调用)

// express框架 - 托管静态资源

// 引入express框架
const express = require('express')

// 创建app服务器
const app = express()

// 配置解析静态资源的内置中间件的两个用法
app.use(express.static('public'))//直接配置同目录下的文件名即可
app.use('/uploads',express.static('uploads'))//可以配置成路由的模式

app.listen(3000 , ()=>{
console.log('服务器已启动! 端口3000正在监听...');
})

结果展示:

image