move api stuff to api routes

This commit is contained in:
counterweight 2025-02-09 18:09:54 +01:00
parent 329c559a4c
commit 61dfd7ff5c
Signed by: counterweight
GPG key ID: 883EDBAA726BD96C
2 changed files with 46 additions and 39 deletions

View file

@ -1,11 +1,9 @@
const express = require('express');
const uuid = require("uuid");
const cookieParser = require('cookie-parser');
const path = require('path');
const sequelize = require('./database');
const Session = require('./models/Session');
const SessionNpubbed = require('./models/SessionNpubbed');
sequelize.sync().then(() => {
console.log('Database synced');
@ -36,45 +34,10 @@ app.use(async (req, res, next) => {
});
const webRoutes = require('./routes/webRoutes');
const apiRoutes = require('./routes/apiRoutes');
app.use('/', webRoutes);
app.post('/api/session-npubbed', async (req, res) => {
const sessionUuid = req.cookies.sessionUuid;
const npub = req.body.npub;
if (!sessionUuid || !npub) {
return res.status(400).json({ error: 'Missing session_uuid or npub' });
}
try {
const existingRecord = await SessionNpubbed.findOne({
where: { sessionUuid, npub }
});
if (existingRecord) {
console.log("Record already exists. No need to create a new one.");
return res.json({ message: 'SessionNpubbed record already exists' });
}
console.log("No matching record found. Creating a new one...");
await SessionNpubbed.create({
sessionNpubbedUuid: uuid.v7(),
sessionUuid,
npub,
created_at: new Date().toISOString()
});
return res.json({ message: 'SessionNpubbed record created successfully' });
} catch (error) {
console.error("Error handling SessionNpubbed record:", error);
return res.status(500).json({ error: 'Failed to process sessionNpubbed record' });
}
});
app.use('/api', apiRoutes);
app.listen(port, () => {
console.log(`Server started on port ${port}`);

44
src/routes/apiRoutes.js Normal file
View file

@ -0,0 +1,44 @@
const express = require('express');
const uuid = require("uuid");
const SessionNpubbed = require('../models/SessionNpubbed');
const router = express.Router();
router.post('/session-npubbed', async (req, res) => {
const sessionUuid = req.cookies.sessionUuid;
const npub = req.body.npub;
if (!sessionUuid || !npub) {
return res.status(400).json({ error: 'Missing session_uuid or npub' });
}
try {
const existingRecord = await SessionNpubbed.findOne({
where: { sessionUuid, npub }
});
if (existingRecord) {
console.log("Record already exists. No need to create a new one.");
return res.json({ message: 'SessionNpubbed record already exists' });
}
console.log("No matching record found. Creating a new one...");
await SessionNpubbed.create({
sessionNpubbedUuid: uuid.v7(),
sessionUuid,
npub,
created_at: new Date().toISOString()
});
return res.json({ message: 'SessionNpubbed record created successfully' });
} catch (error) {
console.error("Error handling SessionNpubbed record:", error);
return res.status(500).json({ error: 'Failed to process sessionNpubbed record' });
}
});
module.exports = router;