express

作者: 奈何明月照沟渠 | 来源:发表于2023-03-19 16:42 被阅读0次

    创建express项目
    npm init npm i express

    get

    const express = require('express')
    const fs = require('fs')
    const app = express()
    app.get('/',(req,res)=>{
        fs.readFile('./list.json','utf-8',(err,data)=>{
            if(!err){
                const back = JSON.parse(data)
                res.send(back.user) // 返回结果
            }else{
                res.status('500').json({err}) // 设置err后返回的状态码并将错误信息tojson
            }
        })
    })
    app.listen(3000,()=>{
        console.log('run http://127.0.0.1:3000');
    })
    

    post

    post请求需要设置content-type
    express中已经封装好了,下面代码表示可以接收两种类型的content-type

    app.use(express.urlencoded()) // x-www-form-urlencoded
    app.use(express.json()) //application/json
    
    
    app.post('/',async (req,res)=>{
         const back = await readFile('./list.json','utf-8')
         if(back) {
             let fileData = JSON.parse(back)
             let newId = fileData.user.length+1
             fileData.user.push({
                 name: req.body.name,
                 age: req.body.age,
                 id: newId
             })
             console.log(fileData);
             try {
                 const w = await writeFile('./list.json',JSON.stringify(fileData,null,2))
                 console.log(w);
                 if(w){
                     res.status(200).send('追加成功')
                 }
             }catch (err){
    
             }
    
         }
        // res.send('')
    })
    

    put

    app.put('/:id', async (req,res)=>{
        console.log(req.params);
        try {
            let back = await readFile('./list.json','utf-8')
            const userId = Number.parseInt(req.params.id)
            const userList = JSON.parse(back)
            const user = userList.user.find(item=> item.id == userId)
            if(!user){
                res.status(403).json({error:'用户不存在'})
            }else{
                user.name = req.body.name ? req.body.name : user.name
                user.age = req.body.age ? req.body.age : user.age
                userList.user[user.id - 1] = user
                const w = await writeFile('./list.json',JSON.stringify(userList,null,2))
                res.status(200).send('修改成功')
            }
        }catch (error){
            res.status(500).json({error})
        }
    })
    
    微信截图_20230319221146.png

    相关文章

      网友评论

          本文标题:express

          本文链接:https://www.haomeiwen.com/subject/xhmsrdtx.html