我目前正在Angular2,NodeJS和Redis中构建一个小应用程序,其中用户信息将存储在Redis实例中。我对Redis比较陌生,并且无法想象我需要创建的功能。
用户通过输入表单中的Angular2前端输入单词。然后将该单词转换为不同的字符串,然后将这些值以存储中的对象的形式存储(Redis)。只需要存储最后10个项目,因此存储DB的长度必须为10,最新项目将附加到集合中,如果长度已经为10,则修剪最后一个项目。
我在Redis中实现这一点很困难,我在NodeJS层中的Redis命令似乎没有做我想让他们做的事情。
以下是处理用户输入的NodeJS控制器:
var Config = require(global.appRoot + '/Config.js');
var redisClient = require('../lib/redisConnection');
function Storage() {
this.__objectName = 'Storage';
}
Storage.prototype.storeTerm = function(req, res, next) {
var word = req.body.word;
var newWord = req.body.newWord;
var hashToStore = {
word: newWord
};
redisClient.hmset(['words', word], function(err, reply) {
if(err) {
res.json('Error:' + err);
} else {
res.json(reply);
}
});
};
module.exports = Storage;
正如您所看到的,用户输入从Angular2 http callm发送到此函数,然后解析值,放入对象hashToStore然后我试图将其保存在名为' words' 。这似乎不起作用,并且不确定如何实现10限制功能。
有人可以告诉我这是正确的还是我错了?
由于
答案 0 :(得分:0)