Error: Route.post() requires a callback function but got a [object Undefined] how to overcome with this problem
router
const express=require("express")
const router = express.Router();
const {auth} =require("../middleware/auth")
const { addBd } = require("../controllers/birthdayController");
router.route("/addNewBd").post(auth,addBd);
module.exports = router;
auth.js
const jwt = require("jsonwebtoken");
const User=require("../models/Users")
module.exports = async function (req, res, next) {
let token;
if (
req.headers.authorization &&
req.headers.authorization.startsWith("Bearer")
) {
// Set token from Bearer token in header
token = req.headers.authorization.split(" ")[1];
// Set token from cookie
} else if (req.cookies.token) {
token = req.cookies.token;
}
if (!token) {
return res.status(401).send("you are not logged in");
}
try {
// Verify token
const decoded = jwt.verify(token, process.env.JWT_SECRET);
req.user = await User.findById(decoded.user.id);
next();
} catch (err) {
return res.status(401).send("you are not logged in");
}
};
I am getting this problem how to sort out this one