68 lines
1.3 KiB
JavaScript
68 lines
1.3 KiB
JavaScript
'use strict';
|
|
|
|
const router = require('express').Router();
|
|
const {AuthToken} = require('>/models');
|
|
|
|
|
|
router.get('/', async function(req, res, next){
|
|
try{
|
|
return res.json(await AuthToken.findAll());
|
|
}catch(error){
|
|
next(error);
|
|
}
|
|
});
|
|
|
|
router.post('/', async function(req, res, next){
|
|
try{
|
|
return res.json(await AuthToken.create(req.body));
|
|
}catch(error){
|
|
console.error(error)
|
|
next(error);
|
|
}
|
|
});
|
|
|
|
router.get('/user/:username', async function(req, res, next){
|
|
try{
|
|
return res.json(await AuthToken.findAll({where:{
|
|
username: req.params.username
|
|
}}));
|
|
}catch(error){
|
|
next(error);
|
|
}
|
|
});
|
|
|
|
router.get('/:token', async function(req, res, next){
|
|
try{
|
|
let token = await AuthToken.findByPk(req.params.token)
|
|
token.dataValues.user = await token.getUser()
|
|
|
|
return res.json(token);
|
|
}catch(error){
|
|
next(error);
|
|
}
|
|
});
|
|
|
|
router.put('/:token', async function(req, res, next){
|
|
try{
|
|
let token = await AuthToken.findByPk(req.params.token);
|
|
await token.update(req.body);
|
|
return res.json(token);
|
|
}catch(error){
|
|
next(error);
|
|
}
|
|
});
|
|
|
|
router.delete('/:token', async function(req, res, next){
|
|
try{
|
|
let token = await AuthToken.findByPk(req.params.token);
|
|
await token.destroy();
|
|
|
|
return res.json({'deleted': true});
|
|
}catch(error){
|
|
next(error);
|
|
}
|
|
});
|
|
|
|
|
|
module.exports = router;
|