Files
talk/services/subscriptions.js
T
2017-06-08 15:08:18 -06:00

33 lines
868 B
JavaScript

const cookieParser = require('cookie-parser')();
const authentication = require('../middleware/authentication');
// Session data does not automatically attach to websocket req objects.
// This middleware code looks for a user in the session and, if it exists,
// attaches it to the graph req.
const deserializeUser = (req) => {
return new Promise((resolve, reject) => {
// Parse the cookies (if they exist?).
cookieParser(req, null, (err) => {
if (err) {
return reject(err);
}
// This uses the authentication connect middleware to establish the
// current user.
authentication(req, null, (err) => {
if (err) {
return reject(err);
}
// Resolve with the request (user removed possibly).
return resolve(req);
});
});
});
};
module.exports = {
deserializeUser
};