2013-03-12 2 views
29

मैं ढांचे व्यक्त करने और यहां के लिए नया हूँ है कि मैं क्या है:<code>server.js</code> फ़ाइल में एक्सप्रेस ढांचे में सत्रों में अजीब त्रुटि मिल रही है

// Module dependencies. 
var application_root = __dirname, 
express = require('express'), //Web framework 
path = require('path'), //Utilities for dealing with file paths 
mongoose = require('mongoose'); //MongoDB integration 

//Create server 
var app = express(); 

// Configure server 
app.configure(function() { 

app.use(express.bodyParser()); 
app.use(express.methodOverride()); 
app.use(app.router); 
app.use(express.session({secret:'thisismysupersecret'})); 
app.use(express.static(path.join(application_root, 'site'))); 
app.use(express.errorHandler({ dumpExceptions: true, showStack: true })); 
}); 
app.post("/verifyLogin",function(request,response){ 
var usr=request.body.username; 
var pass=request.body.password; 
//request.session.email=usr; 
response.redirect('dashboard'); 
}); 

//Start server 
var port = 3000; 
app.listen(port, function() { 
console.log('Express server listening on port %d in %s mode', port, app.settings.env); 
}); 

मैं स्थानीय होस्ट करने के लिए नेविगेट जब: 3000 मैं इस त्रुटि मिलती है

500 TypeError: Cannot read property 'connect.sid' of undefined

समस्या कहां है?

उत्तर

75

आप cookieParser मिडलवेयर छूट रहा है:

... 
app.use(express.cookieParser()); 
app.use(express.session({secret:'thisismysupersecret'})); 
... 

(सत्र कुकीज़ का उपयोग कर कार्यान्वित किया जाता है के बाद से)।

+0

और कैसे? मैं code.session.email = usr का उपयोग कोड में टिप्पणी के रूप में करता हूं लेकिन यह अपरिभाषित की त्रुटि फेंकता है ... – beNerd

+1

आपको अपने सभी मार्गों के नीचे 'app.use (app.router) 'को स्थानांतरित करने की आवश्यकता है। – robertklep

+0

हाँ यह काम किया। क्या आप मिडलवेयर स्टैक जोड़ने की इस अवधारणा को समझने में मेरी मदद कर सकते हैं? मेरा मतलब है कि आदेश कैसे अंतर बनाता है और क्यों? धन्यवाद। – beNerd

0

मुझे एक ही समस्या थी।

सत्र चर का उपयोग करने के लिए

app.use(express.cookieParser()); 

बुला कर लें से पहले

app.use(express.session({secret:'thisismysupersecret'}));

संबंधित मुद्दे

 संबंधित मुद्दे