浏览代码

Refactor to use hash-tables for users in place of JSON

Matt Coles 9 年之前
父节点
当前提交
0aadb40b77
共有 1 个文件被更改,包括 5 次插入4 次删除
  1. 5 4
      index.js

+ 5 - 4
index.js

32
             bcrypt.hash(tmp_password, null, null, function (err, hash) {
32
             bcrypt.hash(tmp_password, null, null, function (err, hash) {
33
                 user_object["password"] = hash;
33
                 user_object["password"] = hash;
34
                 user_object["auth-key"] = bcrypt.hashSync(Date.now().toString() + tmp_username);
34
                 user_object["auth-key"] = bcrypt.hashSync(Date.now().toString() + tmp_username);
35
-                redis.set(uquery, JSON.stringify(user_object));
35
+                redis.hset(uquery, "password", user_object.password);
36
+                redis.hset(uquery, "auth-key", user_object["auth-key"]);
36
                 res.send({"registered": 1,
37
                 res.send({"registered": 1,
37
                          "auth-key": user_object["auth-key"],
38
                          "auth-key": user_object["auth-key"],
38
                          "error": 0});
39
                          "error": 0});
48
     var auth_key = req.body.auth_key || req.query.auth_key;
49
     var auth_key = req.body.auth_key || req.query.auth_key;
49
     var uquery   = 'user:' + username;
50
     var uquery   = 'user:' + username;
50
 
51
 
51
-    redis.get(uquery).then(function (result) {
52
+    redis.hgetall(uquery).then(function (result) {
52
         if (result !== "" && result !== undefined && result !== null) {
53
         if (result !== "" && result !== undefined && result !== null) {
53
-            var user_object = JSON.parse(result);
54
+            var user_object = result;
54
             if (auth_key !== "" && auth_key !== undefined && auth_key !== null) {
55
             if (auth_key !== "" && auth_key !== undefined && auth_key !== null) {
55
                 if (auth_key === user_object["auth-key"]) {
56
                 if (auth_key === user_object["auth-key"]) {
56
                     var timestamp_user = Date.now().toString() + username;
57
                     var timestamp_user = Date.now().toString() + username;
57
                     user_object["auth-key"] = bcrypt.hashSync(timestamp_user);
58
                     user_object["auth-key"] = bcrypt.hashSync(timestamp_user);
58
-                    redis.set(uquery, JSON.stringify(user_object));
59
+                    redis.set(uquery, "auth-key", user_object["auth-key"]);
59
                     res.send({"logged_in": 1,
60
                     res.send({"logged_in": 1,
60
                              "auth-key": user_object["auth-key"],
61
                              "auth-key": user_object["auth-key"],
61
                              "error": 0});
62
                              "error": 0});