【发布时间】:2020-09-10 18:29:56
【问题描述】:
我想使用 Express 和 MongoDB 创建搜索 API,我已经创建了 GET、POST、DELETE、UPDATE,但我找不到任何关于如何使用 GET POST 等执行搜索的信息
我正在发布我的 Express API 代码,它已经具有 GET POST DELETE,现在我只想创建这样的搜索,请帮助我。
const express = require('express')
const router = express.Router()
const cors = require('cors')
//Importing Jobs Model
const JobsModel = require('../../models/jobs')
const { find } = require('../../models/jobs')
//POST Req
router.post('/', async (req,res) => {
const newJobPost = new JobsModel(req.body)
try{
const jobPost = await newJobPost.save()
if(!jobPost) throw Error('Error, JobPost Not Saved...!')
res.status(200).json(jobPost)
}catch(err){
res.status(400).json({msg:err})
}
})
//GET All Req
router.get('/',cors(), async (req,res) => {
try{
const getJobs = await JobsModel.find()
if(!getJobs) throw Error('Error, No Jobs Found...!')
res.status(200).json(getJobs)
}catch(err){
res.status(400).json({msg:err})
}
})
//GET Single Req
router.get('/:id',cors(), async (req,res) => {
try{
const getJob = await JobsModel.findById(req.params.id)
if(!getJob) throw Error('Error, Job Not Found...!')
res.status(200).json(getJob)
}catch(err){
res.status(400).json({msg:err})
}
})
//DELETE Req
router.delete('/:id',cors(), async (req,res) => {
try{
const delJobs = await JobsModel.findByIdAndDelete(req.params.id)
if(!delJobs) throw Error('No Jobs Found to Delete...!')
res.status(200).json({success: true})
}catch(err){
res.status(400).json({msg:err})
}
})
//UPDATE Req
router.patch('/:id',cors(), async (req,res) => {
try{
const updateJob = await JobsModel.findByIdAndUpdate(req.params.id, req.body)
if(!updateJob) throw Error('Error, No Jobs Found to Update...!')
res.status(200).json({success: true})
}catch(err){
res.status(400).json({msg:err})
}
})
【问题讨论】:
标签: node.js mongodb express mern rest