user.js
760 Bytes
const _ = require('lodash');
const cookie = global.yoho.cookie;
module.exports = () => {
return (req, res, next) => {
// 从 SESSION 中获取到当前登录用户的 UID
if (req.session && _.isNumber(req.session._LOGIN_UID)) {
req.user.uid = req.session._LOGIN_UID;
}
// session 没有读取到的时候,从 cookie 读取 UID
if (!req.user.uid && req.cookies._UID) {
req.user.uid = cookie.getUid(req);
}
// 从 SESSION 中获得 USERNAME
if (req.user.uid) {
req.user.username = req.session._USERNAME;
if (!req.user.username) {
req.user.username = req.cookies._USERNAME;
}
}
next();
};
};