目录路由和接口接口传参GET接口POST接口-普通键值对POST接口-JSONPOST接口-fORM-data文件上传总结在写接口前,我们要明白什么是接口,在前端我们叫接口,而后端就
在写接口前,我们要明白什么是接口,在前端我们叫接口,而后端就叫路由,这其实是指同一个东西。
路由(Routing)是由一个URL(或者叫路径标识)和一个特定的Http方法(GET、POST等)组成的,涉及到应用如何处理响应客户端请求。每一个路由都可以有一个或多个处理器函数,当匹配到路由时,这些个函数将被执行。
// 引入express
const express = require('express')
//创建express实例存入变量app ,调用express
const app = express()
// 定义路由
//METHOD:是一个http请求方法;PATH:请求路径;HANDLER:是当路由匹配到时需要执行的处理函数
app.METHOD(PATH, HANDLER)
我们使用ajax请求向服务器接口传参,按http协议的规定,每个都有三个部分:
content-type常见有三种取值:
content-type
来决定。express
框架会自动帮我们收集get类型的接口从url地址中传递的查询字符串参数,并自动保存在req对象的query属性中,我们直接获取即可。
app.get('/get',(req,res) => {
// 输出请求参数
console.log(req.query)
//结束本次响应并返回内容
res.send('hello world!')
})
具体来说当请求头的content-type
为x-www-form-urlencoded时,表示上传的普通简单键值对 。
// 使用中间件获取普通键值对参数
app.use(express.urlencoded())
app.post('/add',(req,res) => {
// 输出请求参数
//app.use(....)之后,在res中就会多出一个属性res.body,里面存放着键值对参数
console.log(req.body)
//结束本次响应并返回内容
res.send("hello world!")
})
在post传递参数时,如果要传入的参数比较复杂(多级嵌套),例如表单数据,则可以使用json格式上传。
// 使用中间件获取JSON参数
app.use(express.json())
app.post('/post-json',(req,res) => {
// 输出请求参数
console.log(req.body)
//结束本次响应并返回内容
res.send("hello world!")
})
如果post涉及文件上传操作,则需要在服务器端额外使用第三方multer
这个包(不属于express)来获取上传的信息。
// 引入包
const multer = require('multer')
// 配置 上传的文件会保存到unloads这个文件夹下
const upload = multer({dest:'unloads/'})
//upload.single表示单文件上传,cover表示本次上传的数据
app.post('/post-file',upload.single('cover'),(req,res) => {
// req.file记录了上传文件的信息
console.log(req.file)
//结束本次响应并返回内容
res.send({message:"ok"})
})
upload.single
只是处理了文件的上传。你仍可以通过req.body来获取其它参数到此这篇关于nodejs使用Express框架写后端接口的文章就介绍到这了,更多相关nodejs Express后端接口内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
--结束END--
本文标题: nodejs使用Express框架写后端接口的全过程
本文链接: https://lsjlt.com/news/147805.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-01-12
2023-05-20
2023-05-20
2023-05-20
2023-05-20
2023-05-20
2023-05-20
2023-05-20
2023-05-20
2023-05-20
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0