add cache to api calls

This commit is contained in:
karl.hudgell 2020-06-23 11:29:19 +01:00
parent d43f8cbb3e
commit 76f07471e6
3 changed files with 22 additions and 2 deletions

9
app.js
View File

@ -1,6 +1,10 @@
require('dotenv').config();
var request = require("request");
cachedRequest = require('cached-request')(request)
cacheDirectory = "./cache";
cachedRequest.setCacheDirectory(cacheDirectory);
const logger = require('perfect-logger');
const TelegramBot = require('node-telegram-bot-api');
@ -70,10 +74,11 @@ bot.on('message', (msg) => {
'x-rapidapi-host': 'football-pro.p.rapidapi.com',
'x-rapidapi-key': process.env.RAPIDAPI_API_KEY,
useQueryString: true
}
},
ttl: 86400 //3 seconds
};
request(options, function (error, response, body) {
cachedRequest(options, function (error, response, body) {
if (error) throw new Error(error);
// console.log(body);

14
package-lock.json generated
View File

@ -79,6 +79,15 @@
"resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz",
"integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg=="
},
"cached-request": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/cached-request/-/cached-request-2.0.1.tgz",
"integrity": "sha512-7kqn3aFWOhZrDAIXCnSETWsyHPr71QkmtK5sRABP0SJgeIdkOj31Qje7k9Q8+a8p2WvGoUJECyQGn/KF0qoBhw==",
"requires": {
"graceful-fs": "^4.0.0",
"mkdirp": "^0.5.1"
}
},
"caseless": {
"version": "0.12.0",
"resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
@ -288,6 +297,11 @@
"minimatch": "0.3"
}
},
"graceful-fs": {
"version": "4.2.4",
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz",
"integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw=="
},
"growl": {
"version": "1.9.2",
"resolved": "https://registry.npmjs.org/growl/-/growl-1.9.2.tgz",

View File

@ -14,6 +14,7 @@
"author": "",
"license": "ISC",
"dependencies": {
"cached-request": "^2.0.1",
"dotenv": "^8.2.0",
"node-telegram-bot-api": "^0.50.0",
"perfect-logger": "^2.0.1",