ready for data structures, auth and middleware done

This commit is contained in:
Ben
2018-09-07 17:16:20 +01:00
parent 3ed9ed4cbd
commit 94fe1578d9
7 changed files with 395 additions and 2 deletions

View File

@@ -3,3 +3,4 @@ export let Controllers = {};
Controllers.UserController = require('./userController').UserController;
Controllers.LoginController = require('./loginController').LoginController;
Controllers.PermaLinkController = require('./permaLinkController').PermaLinkController;
Controllers.NoteController = require('./noteController').NoteController;

View File

@@ -12,7 +12,7 @@ export class AuthMiddleWare extends MiddleWare {
errors.endpoint();
return;
}
let token = req.headers.authorization;
let user = await AuthModel.getUserFromToken(token);
if (user == -1) {

View File

@@ -0,0 +1,18 @@
import {Logger} from '../models/logger';
import {ControllerHandler} from './controllerHandler';
import {API} from '../models/api/api';
import {Database} from '../models/database/database'
import {PermaLink} from '../models/permalinks/permalink';
export class NoteController extends ControllerHandler {
static async newNote(req, res, next) {
Logger.debug(JSON.stringify(req.user, false, 4));
next();
}
}

View File

@@ -23,7 +23,7 @@ export class Router {
app.post('/unauth/permanote', [MiddleWare.RateLimits.request, Controllers.PermaLinkController.unauthentacatedPermaLink]);
app.get('/note/:endpoint', [MiddleWare.RateLimits.request, Controllers.PermaLinkController.getNote]);
app.post('/auth/note', [MiddleWare.RateLimits.request, MiddleWare.Auth.authUser]); // Passes through auth middleware which if authenticated passes user obj and token to the note handling function for it to deal with
app.post('/auth/note', [MiddleWare.RateLimits.request, MiddleWare.Auth.authUser, Controllers.NoteController.newNote]); // Passes through auth middleware which if authenticated passes user obj and token to the note handling function for it to deal with
app.post('/aith/group', [MiddleWare.RateLimits.request, MiddleWare.Auth.authUser]);
app.get('/auth/getallnotes', [MiddleWare.RateLimits.request, MiddleWare.Auth.authUser]);

View File

@@ -3,6 +3,7 @@ import {Database} from '../database/database';
export class AuthModel {
static async getUserFromToken(token) {
let id = await Database.auth.getIDByToken(token);
if (id == -1) return id;
return await Database.users.getUserByID(id.id);
}
}

View File

@@ -70,6 +70,8 @@ export class BaseDatabase {
}
});
try {
await connection.sync({force: false});
} catch (e) {