Selaa lähdekoodia

Moved API routes into separate file

Fela Maslen 7 vuotta sitten
vanhempi
commit
d24885dcd8
4 muutettua tiedostoa jossa 27 lisäystä ja 7 poistoa
  1. 5 0
      package-lock.json
  2. 1 0
      package.json
  3. 5 7
      src/server/index.js
  4. 16 0
      src/server/routes/index.js

+ 5 - 0
package-lock.json

@@ -3861,6 +3861,11 @@
         "vary": "~1.1.2"
       }
     },
+    "express-async-errors": {
+      "version": "3.1.1",
+      "resolved": "https://registry.npmjs.org/express-async-errors/-/express-async-errors-3.1.1.tgz",
+      "integrity": "sha512-h6aK1da4tpqWSbyCa3FxB/V6Ehd4EEB15zyQq9qe75OZBp0krinNKuH4rAY+S/U/2I36vdLAUFSjQJ+TFmODng=="
+    },
     "extend": {
       "version": "3.0.2",
       "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",

+ 1 - 0
package.json

@@ -69,6 +69,7 @@
     "@babel/polyfill": "^7.2.5",
     "body-parser": "^1.18.3",
     "express": "^4.16.4",
+    "express-async-errors": "^3.1.1",
     "joi": "^14.3.1",
     "mongodb": "^3.1.10",
     "react": "^16.7.0",

+ 5 - 7
src/server/index.js

@@ -1,4 +1,6 @@
 const express = require('express');
+require('express-async-errors');
+
 const bodyParser = require('body-parser');
 
 const webpack = require('webpack');
@@ -7,15 +9,10 @@ const path = require('path');
 const getConfig = require('server/config');
 const { getLogger } = require('server/modules/logger');
 const { getDBConnection } = require('server/modules/db');
+const { apiRoutes } = require('server/routes');
 
 const webpackConfig = require('../../webpack.config');
 
-function healthEndpoint(config, db, logger, app) {
-    app.get('/health', (req, res) => {
-        res.send('OK');
-    });
-}
-
 function setupDevServer(config, db, logger, app) {
     if (!config.__DEV__ || process.env.SKIP_APP === 'true') {
         return;
@@ -55,7 +52,8 @@ async function run() {
 
         setupMiddleware(app);
 
-        healthEndpoint(config, db, logger, app);
+        app.use('/api1', apiRoutes(config, db, logger));
+
         setupDevServer(config, db, logger, app);
         clientRoute(config, db, logger, app);
 

+ 16 - 0
src/server/routes/index.js

@@ -0,0 +1,16 @@
+const { Router } = require('express');
+
+function apiRoutes(config, db) {
+    const router = new Router();
+
+    router.get('/health', (req, res) => {
+        res.send('OK');
+    });
+
+    return router;
+}
+
+module.exports = {
+    apiRoutes
+};
+