Implement API rate limit handling support (#227)
* Merged all IGDB API communications into one class * Added code to handle IGDB's rate limiter * Revised IGDB rate limit avoidance and recovery times
This commit is contained in:
@@ -15,12 +15,6 @@ namespace gaseous_server.Classes.Metadata
|
||||
|
||||
}
|
||||
|
||||
private static IGDBClient igdb = new IGDBClient(
|
||||
// Found in Twitch Developer portal for your app
|
||||
Config.IGDB.ClientId,
|
||||
Config.IGDB.Secret
|
||||
);
|
||||
|
||||
public static Platform? GetPlatform(long Id, bool forceRefresh = false)
|
||||
{
|
||||
if (Id == 0)
|
||||
@@ -168,7 +162,8 @@ namespace gaseous_server.Classes.Metadata
|
||||
private static async Task<Platform> GetObjectFromServer(string WhereClause)
|
||||
{
|
||||
// get platform metadata
|
||||
var results = await igdb.QueryAsync<Platform>(IGDBClient.Endpoints.Platforms, query: fieldList + " " + WhereClause + ";");
|
||||
Communications comms = new Communications();
|
||||
var results = await comms.APIComm<Platform>(IGDBClient.Endpoints.Platforms, fieldList, WhereClause);
|
||||
var result = results.First();
|
||||
|
||||
return result;
|
||||
|
Reference in New Issue
Block a user