rate limiting

This commit is contained in:
Jake Kasper
2025-08-23 14:11:49 -04:00
parent ae3ad6fb81
commit e911810157
2 changed files with 36 additions and 6 deletions

View File

@@ -13,6 +13,24 @@ const apiClient = axios.create({
},
});
// Rate limiting - simple queue to prevent excessive requests
let lastRequestTime = 0;
const MIN_REQUEST_INTERVAL = 100; // 100ms between requests
// Add rate limiting interceptor
apiClient.interceptors.request.use(async (config) => {
const now = Date.now();
const timeSinceLastRequest = now - lastRequestTime;
if (timeSinceLastRequest < MIN_REQUEST_INTERVAL) {
const delay = MIN_REQUEST_INTERVAL - timeSinceLastRequest;
await new Promise(resolve => setTimeout(resolve, delay));
}
lastRequestTime = Date.now();
return config;
});
// Request interceptor to add auth token
apiClient.interceptors.request.use(
(config) => {