Мне часто сложно управлять сложными запросами GET без отправки тела JSON. Параметры URL просто не будут обрезаны. Если мне удастся найти работу с параметрами URL-адресов, тогда она обычно добавляет больше сложности и путаницы.Управление сложными данными с помощью GET
Я не веб-разработчик, и я не сделал каких-либо больших приложений, но даже небольшие иш приложения, которые у меня есть запросы как это:
{ page: { batch: 10, current: 1 }
, sort: { _id: -1 }
, project: {history: 0, attach: 0}
, filter: { status: "new"}
}
Это простой запрос без массивов. Массивы просто делают это еще более проблематичным.
Итак, мои вопросы: как вы управляете сложными запросами GET без тела JSON? Что я делаю/думаю неправильно? Почему мы не можем иметь тело с GET?
Да, я, вероятно, могу отправить этот запрос с использованием параметров URL, но это делает жизнь намного сложнее, особенно когда вам нужно отправить фильтры, пейджинг, а что нет ...
Я устал от всех трудностей и изменил такие запросы GET на POST. Я знаю, что это неправильно (отсюда и вопрос), но мне кажется, что огромные нагрузки с моих плеч.
Что случилось с запросами POST? –
@ Веселин Васильев Ничего плохого в ПОСТ. Это то, что я использую. Но неправильно запросить список объектов с POST. Таким образом, большинство моих API в конечном итоге «GET-less». Гораздо проще снимать структурированный JSON, а затем играть с неудобными параметрами URL. –
Использование запросов «POST» для получения ресурса является нарушением принципов REST. Использование 'POST' для запроса поискового вызова/фильтра - это RPC через HTTP. –