sse
This commit is contained in:
@@ -2,7 +2,7 @@ const express = require("express");
|
||||
const router = express.Router();
|
||||
|
||||
const db = require("../dependencies");
|
||||
const { update } = require("./reset");
|
||||
const {send_sse_update} = require("../sse")
|
||||
|
||||
// Fix if balance is null
|
||||
function fix_balance_is_null(acc) {
|
||||
@@ -84,12 +84,8 @@ router.post("/", (req, res) => {
|
||||
.run(number, name, qualifiedName, des, type, req.body.parentAccount);
|
||||
|
||||
res.status(204).send();
|
||||
|
||||
for (res of update.values()) {
|
||||
// res.write("data: update\n\n")
|
||||
res.write("event: update\n");
|
||||
res.write("data: {}\n\n");
|
||||
}
|
||||
send_sse_update();
|
||||
|
||||
});
|
||||
|
||||
router.get("/:account", (req, res) => {
|
||||
@@ -160,11 +156,8 @@ router.put("/:account", (req, res) => {
|
||||
});
|
||||
} else {
|
||||
res.status(204).send();
|
||||
for (res of update.values()) {
|
||||
// res.write("data: update\n\n")
|
||||
res.write("event: update\n");
|
||||
res.write("data: {}\n\n");
|
||||
}
|
||||
send_sse_update();
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
@@ -182,12 +175,7 @@ router.delete("/:account", (req, res) => {
|
||||
} else {
|
||||
res.status(200).send();
|
||||
}
|
||||
|
||||
for (res of update.values()) {
|
||||
// res.write("data: update\n\n")
|
||||
res.write("event: update\n");
|
||||
res.write("data: {}\n\n");
|
||||
}
|
||||
send_sse_update();
|
||||
});
|
||||
|
||||
module.exports = router;
|
||||
|
||||
@@ -2,35 +2,13 @@ const express = require('express');
|
||||
const router = express.Router();
|
||||
|
||||
const db = require("../dependencies");
|
||||
const {send_sse_update} = require("../sse")
|
||||
|
||||
router.post("/reset", (req, res) => {
|
||||
db.exec("DELETE FROM accounts; DELETE FROM transaction_entries; DELETE FROM transactions")
|
||||
|
||||
res.status(204).send()
|
||||
send_sse_update()
|
||||
})
|
||||
|
||||
const update = new Map()
|
||||
async function mysse(req, res) {
|
||||
console.log('Got /events');
|
||||
|
||||
res.set({
|
||||
'Cache-Control': 'no-cache',
|
||||
'Content-Type': 'text/event-stream',
|
||||
'Connection': 'keep-alive'
|
||||
});
|
||||
res.flushHeaders();
|
||||
|
||||
|
||||
// Tell the client to retry every 10 seconds if connectivity is lost
|
||||
res.write('retry: 10000\n\n');
|
||||
update.set(req.sessionId, res)
|
||||
console.log("connected")
|
||||
|
||||
res.on("close", () => {
|
||||
update.delete(req.sessionId)
|
||||
res.end()
|
||||
})
|
||||
};
|
||||
|
||||
|
||||
module.exports = { router, mysse, update};
|
||||
module.exports = { router};
|
||||
|
||||
@@ -2,7 +2,7 @@ const express = require('express');
|
||||
const router = express.Router();
|
||||
|
||||
const db = require("../dependencies");
|
||||
const { update } = require("./reset")
|
||||
const {send_sse_update} = require("../sse")
|
||||
|
||||
router.get("/", (req, res) => {
|
||||
const transactions = db.prepare("SELECT transaction_id as id, postingDate, valueDate, title FROM transactions").all();
|
||||
@@ -30,11 +30,7 @@ router.post("/", (req, res) => {
|
||||
res.send({
|
||||
id: db_transaction.lastInsertRowid
|
||||
})
|
||||
for (res of update.values()) {
|
||||
// res.write("data: update\n\n")
|
||||
res.write('event: update\n');
|
||||
res.write('data: {}\n\n');
|
||||
}
|
||||
send_sse_update()
|
||||
|
||||
})
|
||||
|
||||
@@ -56,12 +52,8 @@ router.put("/:id", (req, res) => {
|
||||
const db_entries = db.prepare("INSERT INTO transaction_entries (transaction_id, account_name, amount, label) VALUES (?, ?, ?, ?)").run(req.params.id, req.body.entries[i].account, req.body.entries[i].amount, req.body.entries[i].label)
|
||||
}
|
||||
|
||||
|
||||
send_sse_update()
|
||||
res.status(204).send()
|
||||
for (res of update.values()) {
|
||||
res.write('event: update\n');
|
||||
res.write('data: {}\n\n');
|
||||
}
|
||||
|
||||
})
|
||||
|
||||
@@ -71,12 +63,7 @@ router.delete("/:id", (req, res) => {
|
||||
|
||||
|
||||
res.status(204).send()
|
||||
for (res of update.values()) {
|
||||
// res.write("data: update\n\n")
|
||||
res.write('event: update\n');
|
||||
res.write('data: {}\n\n');
|
||||
}
|
||||
|
||||
send_sse_update()
|
||||
})
|
||||
|
||||
module.exports = router;
|
||||
|
||||
Reference in New Issue
Block a user