Встречается на собеседованиях • сегодня
Как ограничить количество запросов к Endpoint
Можно использовать паттерн debounce или throttle для контроля частоты запросов.
Debounce – задержка запроса до окончания ввода (например, поиск).
Throttle – ограничение частоты запросов (например, скролл).
Пример с lodash:
javascript
import { debounce } from 'lodash';
const fetchData = debounce(async (query) => {
const response = await fetch(/api/search?q=${query});
return response.json();
}, 300); // Задержка 300 мс
text
Нативный вариант (throttle):
```javascript
let lastCall = 0;
function throttledFetch() {
const now = Date.now();
if (now - lastCall < 1000) return; // 1 запрос в секунду
lastCall = now;
fetch('/api/data');
}Для серверного ограничения можно добавить заголовки Retry-After или использовать токены (например, rate-limiter-flexible для Node.js).

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы