express+MongoDB实现增删改查

认识Express

 yarn add express -S

根目录下新建server.js
书写js代码,node serve.js即可成功运行

快速上手路由

server.js

const express = require('express')

const app = express()

app.get('/', function (req, res) {
    
    
    res.send([
        {
    
     user: 'zhangsan' }
    ])
})

app.get('/about', function (req, res) {
    
    
    res.send(
        {
    
     page: 'About us' }
    )
})

app.get('/products', function (req, res) {
    
    
    res.send([
        {
    
     id: 1, title: 'Product A' },
        {
    
     id: 2, title: 'Product b' },
        {
    
     id: 3, title: 'Product c' },
    ])
})

app.listen(3000, () => {
    
    
    console.log('http://localhost:3000')
})

在这里插入图片描述

静态文件托管

在这里插入图片描述

在这里插入图片描述

CORS跨域请求

在这里插入图片描述

npm i cors

||

yarn add cors
app.use(require('cors')())

MongoDB基础

npm i mongoose

server.js 部分代码

const mongoose = require('mongoose')
mongoose.set('strictQuery', false)
mongoose.connect('mongodb://127.0.0.1:27017/express-test', {
    
     useNewUrlParser: true, useUnifiedTopology: true })
// 定义模型
const Product = mongoose.model('Product', new mongoose.Schema({
    
    
    title: String
}))
// Product.insertMany([
//     { title: '产品1' },
//     { title: '产品2' },
//     { title: '产品3' },
// ])

app.use(require('cors')())
app.use('/', express.static('public'))


app.get('/products', async function (req, res) {
    
    
    res.send(await Product.find())
})

find()

MongoDB查询

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述通过id来查询

app.get('/products/:id', async function (req, res) {
    
    
    const data = await Product.findById(req.params.id)
    res.send(data)
})

在这里插入图片描述

MongDB新增产品和POST请求

app.post('/products', async function (req, res) {
    
    
    const data = req.body
    const product = await Product.create(data)
    res.send(product)
})

在这里插入图片描述
在根目录下新建test.http

@uri=http://localhost:3000/

GET {
   
   {uri}}products
###

GET {
   
   {uri}}products/63c2d778fe577e541a190078

###

POST {
   
   {uri}}products
Content-Type: application/json

{
    "title": "产品4"
}

在这里插入图片描述

MongoDB修改产品和PUT请求

app.put('/products/:id', async function (req, res) {
    
    
    const product = await Product.findById(req.params.id)
    product.title = req.body.title
    await product.save()
    res.send(product)
})

DE

MongoDB删除产品和DELETE请求

app.delete('/products/:id', async function (req, res) {
    
    
    const product = await Product.findById(req.params.id)
    await product.remove()
    res.send({
    
    
        success: true
    })
})

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_45732235/article/details/128690943