Get All Todos Enpoint¶
First endpoint we will create will be the one that will return the list of all todo items from the database as an array. If there are no any todo items in the database, it should return an empty array.
const express = require('express');
const mongoose = require('mongoose');
const cors = require('cors');
const app = express();
const port = 3001;
app.use(cors({origin: '*'}));
const mongoDBLink = 'mongodb+srv://test_user:Test12345@cluster0.axh68.mongodb.net/todo_list?retryWrites=true&w=majority';
mongoose.connect(mongoDBLink);
const TodoModel = mongoose.model('Todo', new mongoose.Schema({ title: String, is_done: Boolean }));
app.get('/', (req, res) => {
res.send('Hello World!');
});
app.get('/todos', async (req, res) => {
try {
const todos = await TodoModel.find();
return res.status(200).json({
data: todos,
})
} catch (e) {
return res.status(500).json({
message: e.message,
})
}
});
app.listen(port, () => {
console.log(`Example app listening at http://localhost:${port}`);
});
Read a lot more content with a free account.
Get access to our content and help us create even more great content by supporting us! ππ―
Login here