以上的请求方式统称为: restful api
通过restful api 来设计后端接口
http://www.ruanyifeng.com/blog/2018/10/restful-api-best-practices.html
测试接口是否正常,我们可以使用测试工具:postman insomnia
api接口暴露的方式有两种:
router.get('/',function( req,res,next ) {
res.render('mine', {
mine: JSON.stringify({
ret: true,
username: 'express',
password: 123
})
})
})
router.get('/',function( req,res,next ) {
res.json({
ret: true,
username: 'express',
password: 123
})
})
router.get('/', (req, res, next) => {
let { username, password } = req.query
res.render('apiPort', {
username,
password
})
})
//get接口测试的参数在Params中设置
//通过req中的query接收请求的数据
// <%-password%>//ejs语法注释无效
router.post('/', (req, res, next) => {
// res.json(req.body)
let { username, password } = req.body
res.render('apiPort', {
posts: {
ret: true,
username,
password
}
})
})
//post接口测试的参数在body中设置
//对象直接渲染: <%-posts%> => [object,object]
//对象的属性渲染 : 能输出对象属性的值
//把对象JSON.stringify()成字符串可输出其内容
router.put('/', function(req, res, next) {
res.render('apiPort', {
mine: JSON.stringify(req.body)
})
})
//put接口测试的参数在body中的raw中设置
//(使用json类型,不然用req.body获取时内容全在属性中){ 'ret: true, text: \'增加减少\'': '' },
//内容格式:{"ret":true,"name":"express"}(改)
//后端获取请求的参数用req.body
router.delete('/', function(req, res, next) {
res.render('apiPort', {
mine: JSON.stringify({
ret: true,
text: '删除'
})
})
})
router.all('/', function(req, res, next) {
res.render('apiPort', {
mine: JSON.stringify({
ret: true,
text: 'all'
})
})
})