Initial commit (Chrome PoC, tested on Vivaldi v7.0.3495.6)

This commit is contained in:
Jack Yu 2024-10-26 21:42:25 -07:00
commit 860fa8ad90
13 changed files with 2904 additions and 0 deletions

9
routes/index.js Normal file
View file

@ -0,0 +1,9 @@
let express = require('express');
let router = express.Router();
/* GET home page. */
router.get('/', function(req, res, next) {
res.render('index', { title: 'WebRTC Auth PoC' });
});
module.exports = router;

43
routes/keys.js Normal file
View file

@ -0,0 +1,43 @@
let express = require('express');
let router = express.Router();
let keymap = {}
router.get('/:id', (req, res) => {
let key = req.params.id.toLowerCase();
if (key in keymap) {
if (keymap[key] < Date.now()) {
delete keymap[key];
res.status(403).json({status: 'Key Expired'});
} else {
res.json({status: 'OK'});
}
} else {
res.status(404).json({status: 'Not found'});
}
});
router.post('/', (req, res) => {
if (!('key' in req.body && 'expires' in req.body)) {
res.status(400).json({status: 'Bad Request'});
}
let key = req.body.key.toLowerCase();
let expires = req.body.expires;
if (key in keymap) {
res.status(400).json({status: 'Key exists'});
} else {
keymap[key] = expires
res.json({status: 'OK'});
}
});
router.delete('/:id', (req, res) => {
let key = req.params.id.toLowerCase();
if (key in keymap) {
delete keymap[key];
res.json({status: 'OK'});
} else {
res.status(404).json({status: 'Not found'});
}
});
module.exports = router;