I have this error although this code is correct
and this code was working well without any issues and suddenly it hit err
when saved changes this error was hit
**/home/ahmed/applications/bootcamper/node_modules/express/lib/router/route.js:202
throw new Error(msg);
^
Error: Route.post() requires a callback function but got a [object
Undefined]
(/home/ahmed/applications/bootcamper/routes/auth.js:5:8)
(/home/ahmed/applications/bootcamper/app.js:20:20)**
auth.js ( controller)
// @desc register user
// @route POST /api/v1/auth/register
// @access Public
exports.register = async(req,res,next) =>{
const { name, password, email, role } = req.body
try{
const user = await User.create({
name,
email,
password,
role
})
res.status(200).json({
success: true,
user
})
}
catch(err){
next(err)
}
}
auth.js ( routes)
const express = require('express');
const router = express.Router()
const {register, login} = require('../routes/auth');
router.post('/register', register)
module.exports = router
app.js
const path = require('path')
const express = require('express');
const dotenv = require('dotenv')
const connectDB = require('./config/db')
const colors = require('colors')
const errorHandler = require('./middleware/error')
const fileupload = require('express-fileupload');
// Middlewares
const logger = require('./middleware/logger')
// Load env vars
dotenv.config({path: './config/config.env'})
// Connect To DB
connectDB();
//Routes
const bootcampsRoutes = require('./routes/bootcamps')
const coursesRoutes = require('./routes/courses')
const authRoutes = require('./routes/auth')
const app = express();
// Body Parser
app.use(express.json());
app.use(logger);
// File uploadinf
app.use(fileupload());
// set static folder
app.use(express.static(path.join(__dirname, 'public')));
//Mount Routers
app.use('/api/v1/bootcamps', bootcampsRoutes);
app.use('/api/v1/courses',coursesRoutes);
app.use('/api/v1/auth',authRoutes)
app.use(errorHandler);
//listen
const PORT = process.env.PORT || 5000
const server = app.listen(PORT, () => {
console.log(`Server running in ${process.env.NODE_ENV} mode on port ${PORT}`.yellow.bold);
});
// Handle Unhandle promise rejections
process.on('unhandledRejection', ( err, promise )=>{
console.log(`Error: ${err.message}`.red)
// Close server & exit process
server.close(()=> process.exit(1))
})
question from:
https://stackoverflow.com/questions/65850340/how-to-correct-error-route-post-requires-a-callback-function-but-got-a-objec 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…