前端开发中常见接口有哪些

256 阅读2分钟

用express写get接口

express框架会自动收集从get类型的接口从url地址中传递的查询字符串参数,并自动保存在req对象的query中,
我们使用时直接获取即可.
    const express = require('express')
    const  app  = express()
    app.get('/get',(req,res)=>{
        console.log(req.query)    //打印查看query的值
        res.send({name:'aaa'}))   //res.json({ name: 'aaa' })
    })
    //监听
    app.listen(3000,()=>{
        console.log('3000')
    })
此时服务器已经完成,在浏览器输入地址即可链接服务器.
注意res.json是express提供的方法,与res.end()

用express写post接口--普通键值

也就是说,是content-type 为x-www-form-urlencoded时,表示上传的普通简单键值对.

    const express = require('express');  //上面已经调用,下面几个接口将不在重复书写
    const app = express();
    //需要使用中间件urlencoded()
    app.use(express.urlencoded())
    app.post('/post',(req,res)=>{
        //req中有body属性,可以直接将html中的属性直接返回到服务器的小黑窗
        console.log('接收到的参数是',req.body)    //注意这里只能用 ',' 如果使用加号就会拼接字符串,
                                                 //打印为{object,object}
        res.json({message:'ok'})  //同理这里也可以使用res.send({message:'ok'})
    })

用express写-json格式的参数

如果在使用post传递参数是,发现层层嵌套,则可以使用JSON格式上传
上面已经说明过,express中存在JSON属性(中间件),可以直接使用,如下
    app.use(express.json())   //JSON中间件使用
    
    app.post('/postjson',(req,res)={
        console.log('接收到的参数是',req.body)
        res.send('/postjson')
    })

express写 post接口-form-data文件上传

这是涉及到文件上传操作,需要在服务器端额外使用第三方的包multer来获取上传的数据(不属于express,需要单独下载)
multer是node.js中的一个中间件,用于处理multipart/form-data类型的表单数据,主要用来上传文件,也可以上传头像.
    //第一步,下载包 在cmd中输入  npm i multer  
    //包会自动安装到node-modules中,安装完成直接使用就好
    //引入包
    const multer = require(multer)
    //配置包
    const  upload = multer({dest:'uploads/'})   //上传的文件会自动保存在这个目录下
    //uploads是一个文件名 ,也可以用其他名字替换它,但是不太建议
    //使用它,这个路由拥有第二参数,  .uppload.single表示单文件上传 ,'cover'表示要上传文件,
    //cover名字也可以自己定,但是要html中数据和服务器中的名字保持一致,例如换成img也是一样的
    
    app.post('/post',upload.single('cover'),(req,res)=>{
        console.log('接收到的参数是',req.body)
         // req.body 记录了其它普通参数(非文件)的信息
        // req.file 记录了文件上传的信息
        res.send('hello world!')
    })