2017-10-08 33 views
0

我學習節點js。我有非常簡單的應用程序,需要輸入查詢到videohostings。例如。你輸入「貓」,頁面顯示一些貓的視頻。沒關係。節點js應用程序會話。如何讓用戶不介入對方的會話?

我使用快遞,我真的不明白如何工作會議和餅乾。我想爲每個用戶製作不同的會話。對不起,因爲我的愚蠢的英語,現在我會寫下來從字面上:D

如果一個用戶輸入查詢,他被給了一個視頻,另一個用戶不應該看到他的查詢結果,即它必須具有相同結果

因爲如果我已經鍵入查詢和視頻顯示,在另一個瀏覽器上顯示相同的結果是某種「普通搜索」。

希望你理解,謝謝回覆!

UPD, 有來自輸入接收查詢,並把它的變量,需要爲哈巴狗模板鏈接到視頻需要插入到

app.post("/", function (req, res) { 

    if(!req.body) { 
     return res.sendStatus(400); 
    } 

    vk.request('video.search', {'q' :req.body.query}, function(_o) { 
     query = _o.response.items[0].player; 
     res.redirect('back'); 
    }); 
}); 
+1

簡單沒有內部的node.js內置會話,你必須建立你的擁有或使用中間件。例如:https://www.npmjs.com/package/node-session –

+0

目前還不清楚爲什麼會話可以幫助您描述的情況。分享代碼的相關部分,這樣我們可以更好地理解。 – Boaz

回答

0

您應該使用express-session

你已經安裝了它後,你需要配置它,像這樣:

const session = require('express-session')({ 
    secret: 'your secret', 
    resave: true, 
    saveUninitialized: true 
}); 

之後,您需要確保您的app使用它(app應該app = express())。爲了使代碼使用express-sessions你需要做的app.use(session);

要訪問您的會話你有當路由得到的request參數session對象做。

在想到它會看起來像這樣保存:

app.get('/', (req, res) =>{ 
    req.session.yourvariable = 'foo'; 
}); 

獲取會話變量其作爲做req.session.yourvariable

+0

哦,它的工作,謝謝。我曾嘗試使用session-cookie做同樣的事情。 –