1234567891011121314151617181920212223242526272829303132333435363738394041 |
- /*
- * Copyright (c) Microsoft Corporation. All rights reserved.
- * Licensed under the MIT License.
- */
- var express = require('express');
- var router = express.Router();
- var fetch = require('../fetch');
- var { GRAPH_ME_ENDPOINT } = require('../authConfig');
- // custom middleware to check auth state
- function isAuthenticated(req, res, next) {
- if (!req.session.isAuthenticated) {
- return res.redirect('/tab-auth'); // redirect to sign-in route
- }
- next();
- };
- router.get('/id',
- isAuthenticated, // check if user is authenticated
- async function (req, res, next) {
- res.render('id', { idTokenClaims: req.session.account.idTokenClaims });
- }
- );
- router.get('/profile',
- isAuthenticated, // check if user is authenticated
- async function (req, res, next) {
- try {
- const graphResponse = await fetch(GRAPH_ME_ENDPOINT, req.session.accessToken);
- res.render('profile', { profile: graphResponse });
- } catch (error) {
- next(error);
- }
- }
- );
- module.exports = router;
|