This Express app connects to MongoDB, defines a User model, and provides routes to add and list users.
const express = require('express');
const mongoose = require('mongoose');
// Connect to MongoDB
mongoose.connect('mongodb://localhost:27017/myapp', { useNewUrlParser: true, useUnifiedTopology: true });
// Define a simple User model
const userSchema = new mongoose.Schema({
name: { type: String, required: true },
email: { type: String, required: true }
});
const User = mongoose.model('User', userSchema);
const app = express();
app.use(express.json());
// Route to create a new user
app.post('/users', async (req, res) => {
try {
const user = new User(req.body);
await user.save();
res.status(201).send(user);
} catch (error) {
res.status(400).send(error.message);
}
});
// Route to get all users
app.get('/users', async (req, res) => {
const users = await User.find();
res.send(users);
});
app.listen(3000, () => {
console.log('Server running on http://localhost:3000');
});