mirror of
https://github.com/DCsunset/taskwarrior-webui.git
synced 2025-08-24 15:06:40 +02:00
feat(backend): enhance error handling and optimize routes
This commit is contained in:
parent
0b2efb515b
commit
2dcfca8107
4 changed files with 20 additions and 11 deletions
6
backend/package-lock.json
generated
6
backend/package-lock.json
generated
|
@ -1519,9 +1519,9 @@
|
|||
}
|
||||
},
|
||||
"taskwarrior-lib": {
|
||||
"version": "0.2.0",
|
||||
"resolved": "https://registry.npmjs.org/taskwarrior-lib/-/taskwarrior-lib-0.2.0.tgz",
|
||||
"integrity": "sha512-QVd0fFlWx9wB5ixBmjTwHgsjstDd8EZYnX25G/QZ2eRvPS/GJBVSWNzrJFnc7mvhLK0+Y5gQBwMbRIGijapJRQ=="
|
||||
"version": "0.4.0",
|
||||
"resolved": "https://registry.npmjs.org/taskwarrior-lib/-/taskwarrior-lib-0.4.0.tgz",
|
||||
"integrity": "sha512-DKQoAK/SgM4wYNtesOI0Fl3ggwv6q7P6br8jY5gi7M24SHzwN57bJMxs6CS43uexv6mzZoY7Rgt+cE0vP9KbkQ=="
|
||||
},
|
||||
"text-table": {
|
||||
"version": "0.2.0",
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
"koa-bodyparser": "^4.3.0",
|
||||
"koa-logger": "^3.2.1",
|
||||
"koa-qs": "^3.0.0",
|
||||
"taskwarrior-lib": "^0.2.0"
|
||||
"taskwarrior-lib": "^0.4.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@types/koa": "^2.11.3",
|
||||
|
|
|
@ -5,6 +5,7 @@ import * as logger from 'koa-logger';
|
|||
import * as qs from 'koa-qs';
|
||||
|
||||
import tasksRouter from './tasks';
|
||||
import { TaskError } from 'taskwarrior-lib';
|
||||
|
||||
const app = new Koa();
|
||||
|
||||
|
@ -12,6 +13,19 @@ qs(app);
|
|||
app.use(bodyParser());
|
||||
app.use(logger());
|
||||
|
||||
app.use(async (ctx, next) => {
|
||||
try {
|
||||
await next();
|
||||
}
|
||||
catch (err) {
|
||||
if (err instanceof TaskError) {
|
||||
(err as any).expose = true;
|
||||
(err as any).status = 400;
|
||||
}
|
||||
throw err;
|
||||
}
|
||||
});
|
||||
|
||||
const router = new Router();
|
||||
router.use('/tasks', tasksRouter.routes());
|
||||
|
||||
|
|
|
@ -9,14 +9,9 @@ router.get('/', async ctx => {
|
|||
ctx.body = tasks;
|
||||
});
|
||||
|
||||
router.post('/', async ctx => {
|
||||
const msg = taskwarrior.update(ctx.body);
|
||||
console.log(msg);
|
||||
ctx.status = 200;
|
||||
});
|
||||
|
||||
router.put('/', async ctx => {
|
||||
const msg = taskwarrior.update(ctx.body);
|
||||
console.log(ctx.request.body.tasks);
|
||||
const msg = taskwarrior.update(ctx.request.body.tasks);
|
||||
console.log(msg);
|
||||
ctx.status = 200;
|
||||
});
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue