const express = require('express')
const app = express()
app.use(express.json())
const mongoose = require('mongoose')
mongoose.connect('mongodb://localhost:27017/express-test', { useNewUrlParser: true })
const Product = mongoose.model('Product', new mongoose.Schema({
title: String,
}))
app.use('/', express.static('public'))
app.use(require('cors')())
app.get('/', (req, res) => {
res.send({ page: 'home' })
})
app.get('/about', (req, res) => {
res.send({ page: 'About Us' })
})
app.get('/product', async (req, res) => {
const data = await Product.find()
res.send(data)
})
app.get('/product/:id', async (req, res) => {
const data = await Product.findById(req.params.id)
res.send(data)
})
app.post('/product', async (req, res) => {
const data = req.body
const product = await Product.create(data)
res.send(product)
})
app.put('/product/:id', async (req, res) => {
const product = await Product.findById(req.params.id)
product.title = req.body.title
await product.save()
res.send(product)
})
app.delete('/product/:id', async (req, res) => {
const product = await Product.findById(req.params.id)
await product.remove()
res.send({
success: true
})
})
app.listen(3000, () => {
console.log('3000');
})