Очень упрощенный код, все же жарят мне мозги несколько часов? Итак, как вы можете видеть на функции add
, она в основном принимает 2 параметра; IP-адрес и дата UNIX
const redis = require("redis"), client = redis.createClient();
const {promisify} = require('util');
const getAsync = promisify(client.get).bind(client);
const setAsync = promisify(client.set).bind(client);
_ = require('lodash');
_weg = require('wegweg')({
globals: false
});
module.exports = {
add: async function (ip, cday) {
var key = _weg.md5('dact:' + ip);
return await getAsync(key).then((result) => {
let value;
if (result == null) {
value = [];
} else {
value = result;
}
value = value.unshift(cday);
value = _.uniq(value);
return setAsync(key, value);
});
}
};
Так что, если я иду вперед и прохожу оба:
await ping_history.add("127.0.0.1", 1562774400);
Вроде не вставляется массив или что-то? key
должно быть MD5 & value
должно быть просто массивом дат, которые все являются уникальными.