Javascript Express 4 HTTP请求:用户。\u id未定义
我正在编写一个简单的Express应用程序来处理图像上传和搜索。上载工作正常,但相同的请求用户id在get请求中无效。知道为什么吗Javascript Express 4 HTTP请求:用户。\u id未定义,javascript,node.js,http,express,get,Javascript,Node.js,Http,Express,Get,我正在编写一个简单的Express应用程序来处理图像上传和搜索。上载工作正常,但相同的请求用户id在get请求中无效。知道为什么吗 //standard express-generator server.js requires //passport.js implementation var session = require('express-session'); app.use(session({ secret: '*****', proxy: true,
//standard express-generator server.js requires
//passport.js implementation
var session = require('express-session');
app.use(session({
secret: '*****',
proxy: true,
resave: true,
saveUninitialized: true
}));
post函数使用Multer中间件可以正常工作。它使用req.user.\u id,没有问题-我已经检查过它是否正在上载到数据库
app.post('/upload/photoData', upload.single('photo'), function(req, res) {
//Retrieve data from request using multer middleware objects
var title = req.body.title;
var description = req.body.description;
var photoURL = req.file.filename;
var date = new Date();
var user_id = req.user._id;
//Code to create Mongoose photo model instance using variables above and save
});
在测试返回以下错误的get函数之后:
TypeError:无法读取未定义的属性“\u id”
app.get('/file/newCalendar', function(req, res) {
var selectedDate = moment(req.query.m)//moment(req.query.m);
var selectedMonth = selectedDate.month()//selectedDate.month();
var user_idLookup = req.query.v;
if(!user_idLookup){
user_idLookup = req.user._id;
};
jsontest = {
'selectedDate': selectedDate,
'selectedMonth': selectedMonth,
'user': user_idLookup
};
})
我现在觉得自己很愚蠢。未定义req.user,因为我在登录/序列化用户之前手动提交GET请求 您使用的是express session吗?是的,我使用的是express session v1。编辑了主要帖子以反映这一点。