2016-11-23 6 views
5

मैं निम्नलिखित NodeJS कोड है:सत्र चर का उपयोग नोडजेस के साथ कैसे करें?

let sql = `SELECT box_id, cubby_id, occupied, comport 
      FROM box 
      WHERE longestDimension = ? 
      AND LOWER(box_id) = LOWER(?)`; 

    connection.query(sql, [boxSelectedDimension, boxSelectedValue] , function(err, rows, fields) { 
     if (!err) { 
      for(var i=0; i< rows.length; i++) { 
       // Make the comparaison case insensitive 
       if (rows[i].occupied == `unoccupied`) { 
        console.log("free"); 

        var comport = rows[i].comport; 
        var command = "open" + rows[i].cubby_id; 

अनिवार्य रूप से मैं एक सत्र चर में comport और command चर का मान संग्रहीत करना चाहें तो यह है कि इन चर के मूल्य NodeJS में एक और रूटर पेज में इस्तेमाल किया जा सकता ।

मुझे यकीन नहीं है कि सत्र चर को कैसे स्टोर और पुनर्प्राप्त किया जाए।

+0

क्या आप एक्सप्रेस का उपयोग कर रहे हैं? –

+0

हाँ मैं एक्सप्रेस – John

उत्तर

9

स्थापित express-session और प्रयोग इस प्रकार है:

var express = require('express'); 
var session = require('express-session'); 
var app = express(); 
app.use(session({secret:'XASDASDA'})); 
var ssn ; 
app.get('/',function(req,res){ 
    ssn=req.session; 
    /* 
    * Here we have assign the 'session' to 'ssn'. 
    * Now we can create any number of session variable we want.  
    * Here we do like this. 
    */ 
    // YOUR CODE HERE TO GET COMPORT AND COMMAND 
    ssn.comport; 
    ssn.command; 
}); 

के बाद कोड सरल लॉगिन और लॉगआउट सत्र का उपयोग समझाने। session हम स्टोर करने के लिए secret का उपयोग शुरू करते हैं। उम्मीद है की यह मदद करेगा।

var ssn; 
app.get('/',function(req,res) { 
    ssn = req.session; 
    if(ssn.email) { 
    res.redirect('/admin'); 
    } else { 
    res.render('index.html'); 
    } 
}); 
app.post('/login',function(req,res){ 
    ssn = req.session; 
    ssn.email=req.body.email; 
    res.end('done'); 
}); 
app.get('/admin',function(req,res){ 
    ssn = req.session; 
    if(ssn.email) { 
    res.write('<h1>Hello '+ssn.email+'</h1>'); 
    res.end('<a href="+">Logout</a>'); 
    } else { 
    res.write('<h1>login first.</h1>'); 
    res.end('<a href="+">Login</a>'); 
    } 
}); 
app.get('/logout',function(req,res){ 
    req.session.destroy(function(err) { 
    if(err) { 
     console.log(err); 
    } else { 
     res.redirect('/'); 
    } 
    }); 
});` 
+0

का उपयोग कर रहा हूं धन्यवाद। App.use का उद्देश्य क्या होगा (सत्र ({गुप्त: 'XASDASDA'})); और मैं चर वैल्यू कैसे सेट करूं? – John

+0

'कुकी' हैंडलिंग आदि के लिए 'गुप्त' का उपयोग किया जाता है और हमने एक्सप्रेस सत्र का उपयोग करने के लिए कुछ गुप्त रखा है और आम तौर पर अलग-अलग विचारों के लिए हम शर्त और आवश्यकता के आधार पर विचारों के लिए रूटिंग से पहले 'सत्र' को प्रमाणित करते हैं। –

+0

ठीक है, इसके लिए बिल्कुल सही धन्यवाद, लेकिन मैं उस पृष्ठ में कॉमपोर्ट और कमांड के सत्र मूल्य को कैसे परिभाषित करूं? – John

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