我知道有很多這方面的步伐,但我真的沒有找到我在找什麼。用戶認證與節點js
所以我想讓用戶用節點js登錄,我使用express,mongo db,但大部分是socket.io。所以,我希望人們填寫自定義表單,從我的index.html:
app.get('/', function(req, res) {
fs.readFile(__dirname + '/../index.html', 'utf8', function(err, text){
res.send(text);
});
});
<form method="get" id="lala" >
<input type="text" name="user">
<input type="text" name="user">
<button id="button">KOKo</button>
</form>
按鈕點擊:
socket.emit('checkLogin', { my collected data from the form });
所以現在在服務器端,我想檢查該用戶名和密碼,如果他們沒事,(我不知道它是如何在這裏,但在PHP中,我使SESSION['user_id']
(例如),所以當用戶回來的另一個請求時,我可以檢查此會話,我知道用戶已登錄,他cna見頁面 我看過passport.js mongo-db會話存儲,但是我沒有能夠讓任何演示程序工作。存儲會話,如何檢查會話以及所有這些內容。
因此,如果有人可以幫我寫下來和我一樣的白癡演示,如:
function check_auth_user(username,password,done,public_id){
var sql="SELECT * FROM `table` WHERE username = '"+ username +"' and password = '"+ password +"' limit 1";
connection.query(sql, function (err,results) {
if (err) throw err;
if(results.length > 0){
var res=results[0];
passport.serializeUser(function(res, done) {
done(null,res);
});
passport.deserializeUser(function(id, done) {
done(null,res);
});
return done(null, res);
} else {
return done(null, false);
}
});
}
但是現在我如何設置會話進店,我應該如何在這之後去實現它?以及如何將其發送到從套接字io連接的正確用戶:-)
如何使用快遞會議解釋 - http://blog.modulus.io/nodejs-and -express-sessions –
感謝您編輯我的文章:-)。好吧,這是一個非常好的演示,我可以更深入地瞭解會話。現在我可以問我如何在我的套接字函數中達到這個「req」參數。因爲我得到的唯一參數只是套接字,我不知道如何返回,所以我可以console.log他。當我嘗試我得到︰ TypeError:將圓形結構轉換爲JSON 在Object.stringify(原生) – Izopi4a