satitm-sso-node/index.js

44 lines
No EOL
1.3 KiB
JavaScript

let passport = require('passport');
let express = require('express');
let https = require('https');
let fs = require('fs');
let directory = require('./directory.js');
let http_config = require('./config/http.js');
let app = express();
require('./config/passport.js');
let session = require('express-session');
const { group } = require('console');
app.use(session({
secret: 'RLCCDwstDuT6nMJf5kko7C',
resave: false,
saveUninitialized: true
}));
app.use(passport.initialize());
app.use(passport.session());
app.use(express.json());
app.use(express.urlencoded({ extended: true }));
app.get('/selfservice/api/whoami', function (req, res) {
if (!req.isAuthenticated()) {
return res.status(401).send('Unauthorized');
}
// Send user type and upn in json format
res.send({ userType: req.user.userType, upn: req.user.username });
});
let authRoutes = require('./routes/auth.js');
app.use('/', authRoutes);
let psRelationStudentRoutes = require('./routes/ps_relation_student.js');
app.use('/selfservice/api', psRelationStudentRoutes);
let psRelationParentRoutes = require('./routes/ps_relation_parent.js');
app.use('/selfservice/api', psRelationParentRoutes);
// Serve Static Files
app.use("/",express.static('statics'));
let server = https.createServer(http_config.options, app);
server.listen(3000, function () {
console.log('Listening on port 3000');
});