• Отличия GET от POST?

    vabka
    @vabka Куратор тега Веб-разработка
    Токсичный шарпист
    Два главных отличия:
    1. У GET-запроса нет тела (как правило, но в теории никто не запрещает отправить с телом).
    А у POST как правило нет query-параметров, но в принципе никто не запрещает одновременно указать и их, и тело
    2. GET-идемпотентный, в отличие от POST.
    Если ты отправишь два одинаковых идемпотентных запроса, то ничего не изменится-это безопасно.
    И этим свойством пользуются браузеры и всякие прокси, которые в случае каких-то сетевых ошибок тихо отправляют идемпотентные запросы повторно.

    Кроме GET есть ещё PUT и DELETE, которые тоже идемпотентные


    Есть ли какая-то информация на этот счёт?

    Всё это описано в википедии в статье об HTTP


    И каким образом ссылку site/?page=2 можно отправить методом POST?

    Через curl или через форму
    Ответ написан
  • Отличия GET от POST?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    UPD: пример ниже приведён для MVC архитектуры. API выдаёт данные, а не страницы. HttpGet - это получение информации от сервера. HttpPost - отправка информации на сервер

    HttpGet и HttpPost это два стандартных типа запроса. Так же есть HttpPut, HttpDelete и куча многих, основные из каких я перечислил ранее.

    Разница между HttpGet и HttpPost в очень простом виде:
    HttpGet - выдача сервером какой-то информации клиенту. Для примера, сервер отдаёт какую-то информацию, допустим, имя и логин пользователя, который зашёл на сайт, для того, что бы отобразить её где-то там. Такая информация передаётся как HttpGet.

    HttpPost - это отправка данных на сервер. Любая. Когда вы регистрируетесь на сайте, ваши данные отправляются как HttpPost. Когда вы делаете изменения личной информации, обновлённые данные отправляются как HttpPost. Т.е. абсолютно любая отправка пакета данных на сервер это HttpPost.

    Стоит отметить, что редирект через url не всегда является httpPost запросом. Если вы просто делаете переадресацию на какую-то страницу и в url передаёте id клиента (Для примера), что бы на странице сведений вывести его данные (Опять же, чисто для примера), это НЕ HttpPost запрос, это просто редирект. Когда вы обращаетесь к серверу с просьбой отрисовать/отрендрить страницу и передаёте туда id клиента, сервер отдаёт HttpGet запрос с разметкой.

    Иными словами, HttpGet запрос, это то, когда сервер должен отрисовать новую разметку. Может выполняться несколько запросов, если вы во время регистрации на сайте отправляете данные, делается сначала HttpPost запрос с отправкой ваших данных, а потом HttpGet, когда у вас рендрится новая страница, на которую вас перекинуло.

    Так же есть HttpPut - аналогия HttpPost, разницы нету почти никакой. Используется когда нужно обновить информацию. Тот же пример HttpDelete - когда нужно удалить информацию. Грубо говоря, запросы с просьбой обновления или удаления какой-то информации серверу
    Ответ написан
  • Как правильно работать с Cronos Архивами?

    @BHop
    Дилетант широкого профиля
    Используйте СУБД CronosPlus.
    Ответ написан
    2 комментария