post.route.js 1.28 KB
const express = require('express');
const asyncHandler = require('express-async-handler');
const postCtrl = require('../controllers/post.controller');

const router = express.Router();
module.exports = router;

//router.use(passport.authenticate('jwt', { session: false }))

router.route('/').post(asyncHandler(insert));
router.route('/get/:_id').get(asyncHandler(get));
router.route('/all').get(asyncHandler(getAll));
router.route('/search').get(asyncHandler(search));
router.route('/delete/:_id').delete(asyncHandler(deleteData));
router.route('/update/:_id').put(asyncHandler(updateData));


async function insert(req, res) {
  let post = await postCtrl.insert(req.body);
  res.json(post);
}

async function get(req, res) {
  let all_posts = await postCtrl.get(req.params['_id']);
  res.json(all_posts);
}

async function getAll(req, res) {
  let all_posts = await postCtrl.getAll();
  res.json(all_posts);
}

async function search(req, res) {
  let result = await postCtrl.search(req.params['key'], req.params['value']);
  res.json(result);
}

async function deleteData(req, res) {
  let all_posts = await postCtrl.deleteData(req.params['_id']);
  res.json(all_posts);
}

async function updateData(req, res) {
  let all_posts = await postCtrl.updateData(req.params['_id'],req.body);
  res.json(all_posts);
}