Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
console.log('GET /results');
console.log(`web -> GET ${reportsURI}/results`);
let result = await reportsAPI.get('/results');
console.log('resp: %j', result.data);
// result.data contains an object
// { success: , result: { voter_id: , vote: } }
// Just passing response through
// Expect an object with vote count: { success: true, result: { a: X, b: X } }
res.send(result.data);
} catch (err) {
console.log('ERROR: GET /results: %s', err.message || err.response || err);
res.status(500).send({ success: false, reason: 'internal error' });
}
});
app.use(xrayExpress.closeSegment());
// initialize and start running
(async () => {
try {
await new Promise(resolve => {
server.listen(port, () => {
console.log(`listening on port ${port}`);
resolve();
});
});
} catch (err) {
console.log(err);
process.exit(1);
}
})();
});
// results route handler
app.get('/results', async (req, res) => {
try {
console.log('GET /results');
let result = await db.tallyVotes();
console.log('results: %j', result);
res.send({ success: true, result: result });
} catch (err) {
console.log('ERROR GET /results: %j', err);
res.send(500, { success: false, reason: err.message });
}
});
app.use(xrayExpress.closeSegment());
// initialize and start running
(async () => {
try {
// initialize database client for querying vote results
db = new Database(databaseConfig);
console.log(`connecting to database at (${db.connectionURL})`);
await db.connect();
console.log(`connected to database (${db.connectionURL})`);
server.listen(port, () => console.log(`listening on port ${port}`));
} catch (err) {
console.log(err);
process.exit(1);
}
})();
let r = data.result;
console.log(`data: ${r}`)
r.totalVotes = r.a + r.b;
r.version = "2.0"
// ex: { success: true, result: { a: X, b: X, totalVotes: X } }
console.log(`v2 data: ${r}`)
}
res.send(data);
} catch (err) {
console.log('ERROR: GET /results: %s', err.message || err.response || err);
res.status(500).send({ success: false, reason: 'internal error' });
}
});
app.use(xrayExpress.closeSegment());
// initialize and start running
(async () => {
try {
await new Promise(resolve => {
server.listen(port, () => {
console.log(`listening on port ${port}`);
resolve();
});
});
} catch (err) {
console.log(err);
process.exit(1);
}
})();
try {
console.log('POST /vote: %j', req.body);
let v = req.body;
let result = await ax.post('/vote', v);
let data = result.data;
// result.data contains an object
// { success: , result: { voter_id: , vote: } }
console.log('data: ', data);
res.send(data);
} catch (err) {
console.log('ERROR: POST /vote:', err);
res.status(500).send({ success: false, reason: err.message })
}
});
app.use(xrayExpress.closeSegment());
// initialize and start running
(async () => {
try {
await new Promise(resolve => {
server.listen(port, () => {
console.log(`listening on port ${port}`);
resolve();
});
});
} catch (err) {
console.log(err);
process.exit(1);
}
})();