DB Caching for SteamApp

This commit is contained in:
Daniel Brendel 2024-04-05 22:12:50 +02:00
parent 98e3e3fc64
commit fd904f4c31
2 changed files with 25 additions and 1 deletions

View File

@ -26,7 +26,7 @@ class ApiController extends BaseController {
$appid = $request->params()->query('appid', null);
$language = $request->params()->query('lang', 'english');
$data = SteamApp::querySteamData($appid, $language);
$data = SteamCache::cachedSteamApp($appid, $language);
HitsModel::addHit(HitsModel::HITTYPE_MODULE_APP);

View File

@ -0,0 +1,24 @@
<?php
/**
* Class SteamCache
*
* Cached gateway to Steam Web API queries
*/
class SteamCache {
public static function cachedSteamApp($appid, $lang)
{
$cache_driver = env('CACHE_DRIVER', null);
$cache_duration = env('CACHE_DURATION', 123);
if ($cache_driver === 'db') {
return json_decode(CacheModel::remember('steam_app_' . $appid . '_' . $lang, $cache_duration, function() use ($appid, $lang) {
return json_encode(SteamApp::querySteamData($appid, $lang));
}));
} else if ($cache_driver === 'redis') {
} else {
return SteamApp::querySteamData($appid, $lang);
}
}
}