🕵️‍♂️ Implementing the hashing keys and expireat

pull/33/head
capitanwesler 4 years ago
parent c04b349995
commit 75e6eaf364

@ -3,6 +3,7 @@ import { requestGot } from '../utils/requestCall';
import AnimeModel, { Anime } from '../database/models/anime.model'; import AnimeModel, { Anime } from '../database/models/anime.model';
import GenreModel, { Genre } from '../database/models/genre.model'; import GenreModel, { Genre } from '../database/models/genre.model';
import util from 'util'; import util from 'util';
import { hashStringMd5 } from '../utils/util';
import { import {
animeExtraInfo, animeExtraInfo,
getAnimeVideoPromo, getAnimeVideoPromo,
@ -194,7 +195,9 @@ export default class DirectoryController {
let resultAnime: any; let resultAnime: any;
try { try {
const resultQueryRedis: any = await redisClient.get(title); const resultQueryRedis: any = await redisClient.get(
`moreInfo_${hashStringMd5(title)}`,
);
if (resultQueryRedis) { if (resultQueryRedis) {
const resultRedis: any = JSON.parse(resultQueryRedis); const resultRedis: any = JSON.parse(resultQueryRedis);
@ -235,7 +238,19 @@ export default class DirectoryController {
}; };
} }
redisClient.set(title, JSON.stringify(resultAnime)); /* Set the key in the redis cache. */
redisClient.set(
`moreInfo_${hashStringMd5(title)}`,
JSON.stringify(resultAnime),
);
/* After 24hrs expire the key. */
redisClient.expireat(
`moreInfo_${hashStringMd5(title)}`,
new Date().getTime() + 86400000,
);
} }
} catch (err) { } catch (err) {
return next(err); return next(err);

@ -1,6 +1,7 @@
import urls from './urls'; import urls from './urls';
import { requestGot } from './requestCall'; import { requestGot } from './requestCall';
import AnimeModel, { Anime } from '../database/models/anime.model'; import AnimeModel, { Anime } from '../database/models/anime.model';
import crypto from 'crypto';
/* /*
Utils fuctions - functions to get information Utils fuctions - functions to get information
@ -457,3 +458,7 @@ export function getThemes(themes: any[]) {
link: item.mirror.mirrorURL, link: item.mirror.mirrorURL,
})); }));
} }
export function hashStringMd5(string: string) {
return crypto.createHash('md5').update(string).digest('hex');
}

Loading…
Cancel
Save