I found when using this library, the default rate limiting implementation would occasionally de-sync from the riot servers, especially in-between invocations, leading to my application hard crashing with a 429 error. I've added some simple logic here to automatically retry rate limited requests given the returned header value.
I tested this implementation out with a small integration test, not included in this PR as it required a RiotApiKey which isn't great for checking into a repository. I can update the test to take in environmental variables and include it in this PR though if you'd like.
I found when using this library, the default rate limiting implementation would occasionally de-sync from the riot servers, especially in-between invocations, leading to my application hard crashing with a 429 error. I've added some simple logic here to automatically retry rate limited requests given the returned header value.
I tested this implementation out with a small integration test, not included in this PR as it required a RiotApiKey which isn't great for checking into a repository. I can update the test to take in environmental variables and include it in this PR though if you'd like.