expressx写get接口

162 阅读1分钟

expressx写get接口

express框架会自动收集get类型的接口从url地址中传递的查询字符串参数,并自动保存在req对象的query属性中,我们直接来获取即可。

const express = require('express')

const app = express()
// app方式(url,回调)
app.get('/api/getbooks', (req, res) => {
  
  const allBooks = [
    {
      "id": 1,
      "bookname": "西游记",
      "author": "吴承恩",
      "publisher": "北京图书出版社"
    },
    {
      "id": 2,
      "bookname": "红楼梦",
      "author": "曹雪芹",
      "publisher": "上海图书出版社"
    },
    {
      "id": 3,
      "bookname": "三国演义",
      "author": "罗贯中",
      "publisher": "北京图书出版社"
    }
  ]
  
  // 当前的参数是
  //express框架会自动收集get类型的接口从url地址中传递的查询字符串参数,并自动保存在req对象的`query`属性中,我们直接来获取即可。
  console.log('当前的参数是', req.query)
  // 根据参数 去返回不同的数据给用户
  const { id } = req.query
  let book = []
  if (id) {
    // 就找一本
   book=allBooks.filter(book => book.id == id)
  } else {
    book=allBooks
  }
  const data = {
    "status": 200,
    "msg": "获取图书列表成功",
    "data": book
  }
  res.send(data)
})
app.listen(3009, () => {
  console.log('服务器启动了')
})