1
Redis에서 사용자 이름과 비밀번호를 확인하는 데 문제가 있습니다. 사용자 이름과 비밀번호가 정의되지 않았다고 말합니다. NodeJs/ExpressJs에서이 문제를 해결하도록 도와 주셨으면합니다.ExpressJS, NodeJs 및 Redis 단순 로그인 오류
CODE :
이
var express = require('express');
var app = express();
var redis = require("redis"),
client = redis.createClient();
var user, pass;
app.use(express.bodyParser());
client.on("error", function (err) {
console.log("error event - " + client.host + ":" + client.port + " - " + err);
});
app.get('/', function (req, res) {
res.sendfile(__dirname + '/index.html');
});
app.post('/', function (req, res) {
console.log("");
console.log("--------------------");
console.log(req.body.user.username);
console.log(req.body.user.password);
console.log("--------EOF---------");
client.hmget(req.body.user.username + user, req.body.user.pasword + pass,
redis.print);
if (req.body.user.username && req.body.user.password == user && pass)
{
res.write("Successfully logged in!");
}
else
{
res.write("Username or Password is incorrect");
}
console.log("req.body.username: " + req.body.username);
console.log("req.body.password: " + req.body.password);
console.log("username: " + user);
console.log("username: " + pass);
res.end();
});
app.listen(80)
을 app.js 여기 내 index.html을 코드입니다.
된 index.html은
<html>
<head></head>
<body>
<form method="post" action="/">
Username: <input type="text" name="user[username]" > <br>
Password: <input type="text" name="user[password]"> <br>
<input type="submit" value="Submit">
</form>
</body>
</html>
힌트 : Redis 클라이언트가 비동기입니다. 사용자를 채우고 전달하려면 콜백이 필요합니다. –
코드 수정을 도와 줄 수 있습니까? 왜냐하면 나는 그것을 얻지 못한다. (Didier Spezia :) –