मुझे सत्रों में समस्या है, जहां कभी-कभी सत्र परिवर्तक I बस सेट अगले पृष्ठ अनुरोध पर अनिर्धारित है। चर को सही ढंग से सेट करने के लिए मुझे आमतौर पर प्रवाह प्रवाह से गुज़रना पड़ता है।नोड.जेएस और एक्सप्रेस सत्र समस्या
मैं पुष्टि कर सकता हूं कि मैं सत्र चर को अपरिभाषित करने की कोशिश नहीं कर रहा हूं; उनके पास एक कानूनी मूल्य है।
मेरे ऐप में, उपयोगकर्ता/ट्विटर/कनेक्ट/टू/ट्विटर/कॉलबैक/से स्थानांतरित होते हैं। पूर्व ट्विटर से कुछ oauth डेटा retreives, बाद में उपयोगकर्ता ट्विटर में लॉग इन करता है। ,/
app.get('/twitter/connect/?', function(req, res){
consumer().getOAuthRequestToken(function(error, oauthToken, oauthTokenSecret, results){
if (error){
// error handling here
} else {
req.session.oauthRequestToken = oauthToken;
req.session.oauthRequestTokenSecret = oauthTokenSecret;
// if I console.log the two session variables above
// they have the proper values.
res.redirect("https://twitter.com/oauth/authorize?oauth_token="+req.session.oauthRequestToken);
}
});
});
उसके बाद चहचहाना/ट्विटर/कॉलबैक करने के लिए वापस उन्हें भेजता है::,
app.get('/twitter/callback/?', function(req, res){
console.log(req.session.oauthRequestToken);
console.log(req.session.oauthRequestTokenSecret);
// more often than not, the two variables above are
// undefined. but not always. usually on the first
// pass, never on the second.
});
मुझे पता नहीं क्या हो रहा है मैं कर सकते हैं
/ट्विटर/कनेक्ट/सरल है पुष्टि करें कि सत्र चर ठीक से सेट किए जा रहे हैं, वे केवल पृष्ठ अनुरोधों के बीच अपना मान नहीं रख रहे हैं, लेकिन केवल पहली बार।
app.configure('development', function(){
app.use(express.cookieParser());
app.use(express.session({ secret:'yodawgyo' }));
app.use(express.errorHandler({ dumpExceptions: true, showStack: true }));
app.use(express.logger());
app.use(express.static(__dirname + '/public'));
app.set('view engine', 'ejs');
app.set('view options', {
open: '{{',
close: '}}'
});
});
मैं अभी के लिए एक देव वातावरण है:
यह कैसे मैं अपने सर्वर बना रहा हूं है। मेरे पास नोड 0.5.0-पूर्व स्थापित है, लेकिन इस मुद्दे को 0.4.1 पर भी देखा गया। मैं एक्सप्रेस 2.3.2 का उपयोग कर रहा हूँ।
किसी भी मदद की बहुत सराहना की जाती है।
मुझे एपीआई को कॉल करने में एक ही समस्या है। मुझे यकीन है कि रीडायरेक्ट पर सत्र जानकारी खो रही है। यही है, अगर मैं अपने ब्राउज़र में पेज रीफ्रेश करता हूं, तो मैं देख सकता हूं कि सत्र में जो सामान मैंने रखा है वह अभी भी वहां है। हालांकि, अगर मैं कुछ बाहरी साइट (जैसे oauth प्रदाता) से रीडायरेक्ट के माध्यम से * एक ही पृष्ठ * पर जाता हूं, तो सत्र पूरी तरह खाली होता है। सुनिश्चित नहीं है कि समस्या क्या है। –
अद्यतन: ऐसा लगता है कि आपको पुनर्निर्देशित अनुरोध के लिए एक अलग सत्र आईडी प्राप्त होती है। –