Sorry ahead of time if this sounds confusing, or has been answered before.
Using node.js, express and express-generator, I created an app that has two route files:
- The first route file does MySQL database interaction and returns the result of queries (used for displaying data on the home and admin pages).
- The second route file uses an LDAP server for checking login credentials, as well as managing login sessions (used for checking authorization on the login and admin pages).
Both routes requires express to function, but if I require express in both route files it gives me an error. Is there a way to allow both route files to use the same express router?
app.js
var express = require('express');
// Other generated requires
var data = require('./routes/data');
var auth = require('./routes/auth');
var app = express();
// Other generated sets and uses
app.use('/', data);
// "login" and "admin" need to use both data.js and auth.js <----------------
//app.use('/login', data);
//app.use('/login', auth);
//app.use('/admin', data);
//app.use('/admin', auth);
module.exports = app;
routes/data.js
var express = require('express');
var router = express.Router();
// Database functions
router.get('/', function (request, response) {
response.render('index');
});
module.exports = router;
routes/auth.js
var express = require('express');
var session = require('express-session');
var directory = require('activedirectory');
var router = express.Router();
// Login and session functions
router.get('/login', function (request, response) {
// Login and session check
response.render('login');
});
router.get('/admin', function (request, response, next) {
// Session check
response.render('admin');
});
module.exports = router;