const express = require("express"); const app = express(); const PropertyModel = require("./models/PropertyModel"); const validId = require("./validId"); app.use(express.json()); app.get("/properties", async (req, res) => { const properties = await PropertyModel.find({}); return res.status(200).send(properties); }); app.get("/properties/:id", async (req, res) => { const propertyId = req.params.id; if (validId(propertyId)) { const property = await PropertyModel.findById(propertyId); if (property) { return res.status(200).send(property); } else { return res.status(404).send({ message: "id not found" }); } } return res.status(400).send({ message: "id provided is invalid" }); }); app.post("/properties", async (req, res) => { const { body } = req; const property = new PropertyModel(body); await property.save(); return res.status(200).send(property); }); module.exports = app;
Preview:
downloadDownload PNG
downloadDownload JPEG
downloadDownload SVG
Tip: You can change the style, width & colours of the snippet with the inspect tool before clicking Download!
Click to optimize width for Twitter