Authored by ccbikai

增加 req.user 对象

... ... @@ -20,6 +20,7 @@ const favicon = require('serve-favicon');
const session = require('yoho-express-session');
const memcached = require('yoho-connect-memcached');
const uuid = require('uuid');
const _ = require('lodash');
const pkg = require('./package.json');
const app = express();
... ... @@ -51,11 +52,7 @@ app.use(session({
return uuid.v4(); // 兼容 PHP SESSION
},
cookie: {
domain: 'yohobuy.com',
path: '/',
httpOnly: true,
secure: false,
maxAge: null
domain: 'yohobuy.com'
},
store: new MemcachedStore({
hosts: config.memcache.session,
... ... @@ -64,6 +61,16 @@ app.use(session({
})
}));
app.use((req, res, next) => {
req.user = {};
// 从 PHP 写的 SESSION 中获取到当前登录用户的 UID
if (req.session && _.isNumber(req.session._LOGIN_UID)) {
req.user.uid = req.session._LOGIN_UID;
}
next();
});
// dispatcher
require('./dispatch')(app);
... ...
... ... @@ -8,7 +8,6 @@ const _ = require('lodash');
const channelModel = require('../models/channel');
const helpers = require(`${global.library}/helpers`);
const log = require(`${global.library}/logger`);
const cookie = require(`${global.library}/cookie`);
const renderData = {
module: 'channel',
... ... @@ -42,7 +41,7 @@ const channelLogger = (err, res) => {
const channelPage = (req, res, data) => {
channelModel.getChannelDate({
gender: data.gender,
uid: cookie.getUid(req)
uid: req.user.uid
}).then(result => {
res.render('channel', Object.assign(renderData, data, result));
}).catch((err) => {
... ...