aboutsummaryrefslogtreecommitdiff
path: root/src/api/structures
diff options
context:
space:
mode:
Diffstat (limited to 'src/api/structures')
-rw-r--r--src/api/structures/Route.js5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/api/structures/Route.js b/src/api/structures/Route.js
index c04c585..2db9bc6 100644
--- a/src/api/structures/Route.js
+++ b/src/api/structures/Route.js
@@ -52,7 +52,10 @@ class Route {
this.options = options || {};
}
- authorize(req, res) {
+ async authorize(req, res) {
+ const banned = await db.table('bans').where({ ip: req.ip }).first();
+ if (banned) return res.status(401).json({ message: 'This IP has been banned from using the service.' });
+
if (this.options.bypassAuth) return this.run(req, res, db);
if (req.headers.apiKey) return this.authorizeApiKey(req, res, req.headers.apiKey);
if (!req.headers.authorization) return res.status(401).json({ message: 'No authorization header provided' });