Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
node_modules
97 changes: 96 additions & 1 deletion api/server.js
Original file line number Diff line number Diff line change
@@ -1,3 +1,98 @@
// SUNUCUYU BU DOSYAYA KURUN
const express = require("express")
const server = express();
const userModel = require("./users/model")

module.exports = {}; // SERVERINIZI EXPORT EDİN {}
server.use(express.json());

server.get('/', function (req, res) {
res.send('Hello World')
});

server.post("/api/users", async (req, res) => {
try {
let { name, bio } = req.body;
if (!name || !bio) {
res.status(400).json({ message: "Lütfen kullanıcı için bir name ve bio sağlayın" });
} else {
let insertedUser = await userModel.insert({ name, bio });
res.status(201).json(insertedUser);
}
} catch (error) {
res.status(500).json({
message: "Veritabanına kaydedilirken bir hata oluştu"
});
}
});

// server.post("/api/users", (req, res) => {
// let {name, bio} = req.body;
// if(!name || !bio) {
// res.status(400).json({message: "Lütfen kullanıcı için bir name ve bio sağlayın"});
// } else {
// let insertedUser = userModel.insert({name, bio})
// .then((insertedUser) => {
// return insertedUser
// })
// .catch((error) => {
// res.status(500).json({message: "Veritabanına kaydedilirken bir hata oluştu"});
// });
// res.status(201).json(insertedUser);
// }
// });

server.get("/api/users", async (req, res) => {
try {
let allUsers = await userModel.find();
res.status(201).json(allUsers);
} catch (error) {
res.status(500).json({ message: "Kullanıcı bilgileri alınamadı" })
}
});

server.get("/api/users/:id", async (req, res) => {
try {
let user = await userModel.findById(req.params.id)
if (!user) {
res.status(404).json({ message: "Kullanıcı bilgileri bulunamadı" })
} else {
res.json(user)
}
} catch (error) {
res.status(500).json({ message: "Kullanıcı bilgisi alınamadı" })
}
});

server.delete("/api/users/:id", async (req, res) => {
try {
let user = await userModel.findById(req.params.id);
if (!user) {
res.status(404).json({ message: "Belirtilen ID li kullanıcı bulunamadı" });
} else {
await userModel.remove(req.params.id);
res.json(user);
}
} catch (error) {
res.status(500).json({ message: "Kullanıcı silinemedi" });
}
});

server.put("/api/users/:id", async (req, res) => {
try {
let user = await userModel.findById(req.params.id);
if (!user) {
res.status(404).json({ message: "Belirtilen ID li kullanıcı bulunamadı" });
} else {
let { name, bio } = req.body;
if (!name || !bio) {
res.status(400).json({ message: "Lütfen kullanıcı için bir name ve bio sağlayın" });
} else {
let updatedUser = await userModel.update(req.params.id, { name, bio });
res.json(updatedUser);
}
}
} catch (error) {
res.status(500).json({ message: "Kullanıcı bilgileri güncellenemedi" });
}
})
module.exports = server; // SERVERINIZI EXPORT EDİN {}
4 changes: 4 additions & 0 deletions index.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
const server = require('./api/server');

const port = 9000;
console.log("Hello World!")
server.listen(port, () => {
console.log("server is listening " +port)
})

// START YOUR SERVER HERE
Loading