Ответ
В GET-запросе данные (payload) передаются в URL в виде query-строки.
Синтаксис:
<URL>?key1=value1&key2=value2
- Строка параметров начинается с символа
?. - Пары
ключ=значениеразделяются символом&. - Специальные символы должны быть закодированы (URL-encoded).
Пример:
GET /search?q=test+api&limit=10&page=2 HTTP/1.1
Host: example.com
Важные ограничения и best practices:
- Длина URL ограничена (обычно ~2048 символов), что не подходит для больших данных.
- Безопасность: Параметры GET видны в истории браузера, логах сервера. Не используйте GET для передачи паролей, токенов или конфиденциальных данных.
- Кэширование и закладки: GET-запросы могут кэшироваться и сохраняться в закладках.
- Семантика: GET предназначен для получения данных, а не для их модификации (согласно REST). Для отправки больших или сложных данных используйте методы POST или PUT.