TGViewer
Тестировщик от бога Тестировщик от бога @godoftesting · 29.5K subscribers
Post #2495 5.6K
Я заметил, что параметры offset и limit в API запросах часто вызывают путаницу, часто люди думают, что это ОТ и ДО хотя это не так

На самом деле их концепция максимально проста!

Параметры offset и limit:

Offset: Этот параметр задает сдвиг, то есть начальную позицию в списке записей, с которой будет начинаться выборка. Например, если offset равен 10, то список начнется с 11-ой записи (индексация начинается с нуля). Таким образом, offset определяет, сколько записей будет пропущено перед тем, как начать возвращать данные.

Limit: Этот параметр определяет количество записей, которое будет возвращено в ответе. Например, если limit равен 10, то будет возвращено 10 записей, начиная с позиции, определенной параметром offset.

Давайте представим, что у вас есть API для получения списка пользователей.

Сделаем такой запрос:
GET /api/users?offset=10&limit=10


В этом запросе:
• offset=10 означает, что выборка начнется с 11-ой записи.
• limit=10 означает, что будет возвращено 10 записей, начиная с 11-ой.

В таком случае ответ будет содержать следующие записи:
{
"total": 567,
"users": [
{"id": 11, "name": "User 11"},
{"id": 12, "name": "User 12"},
{"id": 13, "name": "User 13"},
{"id": 14, "name": "User 14"},
{"id": 15, "name": "User 15"},
{"id": 16, "name": "User 16"},
{"id": 17, "name": "User 17"},
{"id": 18, "name": "User 18"},
{"id": 19, "name": "User 19"},
{"id": 20, "name": "User 20"}
]
}


Добавлю еще несколько примеров для закрепления:

Получение первых 10 записей:
GET /api/users?offset=0&limit=10


Получение следующих 10 записей (11-20):
GET /api/users?offset=10&limit=10


Получение записей с 21 по 30:
GET /api/users?offset=20&limit=10


Дополнительно хочу добавить маленькое пояснение:

offset и limit часто используются для реализации пагинации. Вместо того чтобы возвращать все записи сразу, API может возвращать данные частями, что особенно полезно для больших наборов данных. Это помогает снизить нагрузку на сервер и улучшить производительность, так как обрабатывается меньше данных за один запрос.

Источник
  • 🔥 52
  • 👍 22
  • 😁 3
  • ❤ 1
More from @godoftesting
  1. Oct 2, 2026Так или иначе провёл время с пользой.
  2. Oct 2, 2026Если вам интересна работа с данными, попробуйте освоить Python для анализа данных. Получит…
  3. Oct 1, 2026Что думаете по поводу таких моментов на собеседованиях?
  4. Oct 1, 2026Heisenbug 2026 Autumn: тестирование, практика и живое общение 16–17 октября в Санкт-Петерб…
  5. Oct 1, 2026Это база! Рассказываю о бесплатных функциях Google Календаря, которые упростят вашу жизнь…
  6. Sep 30, 2026Когда щедрость компании не знает границ.
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →