文章目录
认识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)
})

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
})
})

本文介绍了使用Express框架进行Web开发的基本操作,包括设置路由、托管静态文件和处理CORS跨域请求。同时,详细讲解了MongoDB的基础知识,如查询、新增、修改和删除产品,以及如何结合Express实现这些功能。

638

被折叠的 条评论
为什么被折叠?



