Post что это такое
Перейти к содержимому

Post что это такое

  • автор:

Чем отличаются HTTP-методы GET и POST

HTTP-методы GET и POST — самые распространённые способы отправить или получить данные с сервера. Но в разных случаях оба метода могут быть небезопасными или неудобными в использовании. В этой заметке рассмотрим, какой метод когда использовать.

GET — метод для чтения данных с сайта. Например, для доступа к указанной странице. Он говорит серверу, что клиент хочет прочитать указанный документ. На практике этот метод используется чаще всего, например, в интернет-магазинах на странице каталога. Фильтры, которые выбирает пользователь, передаются через метод GET .

:authority: htmlacademy.ru :method: GET :path: /tutorial/php/http-header 

POST — метод для отправки данных на сайт. Чаще всего с помощью метода POST передаются формы.

URL-адрес запроса: https://htmlacademy.ru/ Метод запроса: POST Код состояния: 200 

Формат запроса

Протокол HTTP очень прост и состоит, по сути, из двух частей — заголовков и тела запроса или ответа.

Тело запроса — это информация, которую передал браузер при запросе страницы. Но тело запроса присутствует только если браузер запросил страницу методом POST . Например, если отправлена форма, то телом запроса будет содержание формы.

Пример GET-запроса. Информация передаётся прямо в заголовке.

GET /blog/?name1=value1&name2=value2 HTTP/1.1 Host: htmlacademy.ru 

Пример POST-запроса. Информация передаётся в теле запроса:

POST /blog/ HTTP/1.1 Host: htmlacademy.ru name1=value1&name2=value2 

GET для безопасных действий, POST для опасных

Говоря совсем просто, GET-запросы лучше не использовать с приватной информацией. Вот почему:

  • Они кешируются. Это значит, что логин и пароль, переданные через GET-запрос, могут остаться в интернете навсегда, например, в веб-архиве или кеше Гугла.
  • Остаются в истории браузера. Чтобы узнать, какие данные отправлялись, достаточно нажать Ctrl+H.
  • Сохраняются в закладках и пересылаются. Можно не обратить внимания и опубликовать в соцсетях или отправить ссылку с приватной информацией в GET-запросе.
  • Сохраняются в логах сервера. Например, нельзя отправлять данные банковских карт через GET-запрос, так как это создаёт риски для пользователей.

Таким образом, любые важные данные — логины, пароли, данные карты, персональные данные — лучше передавать с помощью метода POST . Также метод POST поддерживает тип кодирования данных multipart/form-data , что позволяет передавать файлы.

Ещё раз коротко

GET

  • Фильтры в интернет-магазинах
  • Передача параметров через ссылку
  • Другие безопасные запросы

POST

  • Любые формы с паролями или банковскими картами
  • Формы заявок с персональными данными
  • Отправка файлов

Полезные материалы

  • Тренажёр по работе с методом GET
  • Протокол HTTP
  • Где смотреть запросы. Вкладка Network в Chrome DevTools
  • Механизм безопасной переадресации после POST-запроса (англ.)

«Доктайп» — журнал о фронтенде. Читайте, слушайте и учитесь с нами.

Читать дальше

Как работает протокол HTTP

Как работает протокол HTTP

HTTP был разработан в 1990-х годах для создания первого интерактивного текстового веб-браузера. За эти годы протокол менялся и совершенствовался, становился более гибким и постепенно превратился в современный интернет. В статье рассмотрим принцип работы протокола и что важно знать о нём разработчику.

  • 8 февраля 2023

10 популярных функций в MYSQL, которые вам нужно знать

10 популярных функций в MYSQL, которые вам нужно знать

Без лишних слов принесли вам некоторые популярные функции MySQL, без которых вы точно не обойдётесь в работе.

  • 17 января 2023

Подключение файлов в PHP. Метод require()

Подключение файлов в PHP. Метод require()

Способность вызывать сценарий из отдельного файла по его имени называется в PHP подключением файлов. Подключают PHP-сценарии, любые текстовые файлы или HTML-страницы.

  • 21 ноября 2022

Массивы в PHP

Массивы в PHP

Массив — это ещё один тип данных, вроде числа или строки. Главное отличие массива от остальных типов данных заключается в его способности хранить в переменной больше одного значения. В предыдущих примерах имя переменной всегда ассоциировалось только с одним значением:

  • $name = «Иннокентий»
  • $age = 42

А если мы хотим узнать не только пол, имя и возраст пользователя, но и, допустим, любимые сериалы? Очень непросто назвать один самый любимый сериал, а вот вспомнить несколько — намного легче. Сохранение в переменную-массив нескольких значений выглядит так:

 $fav_shows = ["game of thrones", "american horror story", "walking dead"]; 

В этом примере мы сохранили в переменной $fav_shows сразу три значения. Но сохранить эти данные — это только половина дела. Как с ними потом работать? Уже знакомый вам способ вывода переменной на экран не будет работать с массивами:

Так увидеть список любимых сериалов не получится. Дело в том, что массив — это не обычная переменная. Массив хранит не простые типы, вроде текста или чисел (их ещё называют «скалярными типами»), а более сложную структуру данных, поэтому здесь нужен особый подход.

Внутри массива у каждого значения есть адрес, по которому к нему можно обратиться. Такой адрес называется индексом. Индекс — это просто порядковый номер значения внутри массива. Индексация начинается с нуля, так что первый элемент получает индекс — 0 , второй — 1 , и так далее.

Чтобы получить определенный элемент массива, необходимо знать его индекс (ключ). Напечатаем названия всех сериалов из массива через запятую:

Теперь можно дать определение массива: Массив — это совокупность множества элементов вида «ключ: значение».

Массивы позволяют перезаписывать существующие значения и добавлять новые. Добавить новое значение в массив можно так:

$fav_shows[] = "the big bang theory"; 

Новый элемент автоматически получит индекс равный максимальному индексу из существующих + 1. «Теория большого взрыва» сохранится в массиве под индексом 3 .

Если нам перестал нравиться один из сериалов, так как новый сезон оказался очень плох или появился новый фаворит, значения в массиве можно заменить. Чтобы вычеркнуть старое значение и заменить его новым, нужно присвоить новое значение любому из существующих в массиве индексов:

$fav_shows[4] = "fargo"; 

Для полного удаления (без замены на другое) значения по его индексу существует функция unset :

unset($fav_shows[4]); 
  • 10 ноября 2022

Синтаксис PHP

Синтаксис PHP

Разберёмся, из чего состоит любой язык программирования.

У каждого языка есть правила и конструкции, следуя которым мы выражаем мысли и делаем их понятными для другого человека. В программировании всё точно так же. Но вместо человеческого языка мы используем язык программирования PHP, а в роли нашего собеседника выступает PHP-интерпретатор. Поэтому, чтобы выразить свою мысль, мы должны сделать её понятной для интерпретатора.

  • 27 октября 2022

Массивы $_POST и $_GET в PHP. Обработка форм

Формы — это часть языка HTML. Формы нужны для передачи данных от клиента на сервер. Чаще всего формы используются для регистрации пользователей, заполнения анкет, оформления заказа в интернет магазине, и так далее.

Через формы можно отправлять как простую текстовую информацию, так и файлы.

Большую часть времени программирования на PHP вы будете так или иначе работать с формами и данными из них.

HTML описывает то, из каких элементов состоит форма, и как она выглядит. Но без принимающей стороны, то есть сервера, который принимает эти данные и обрабатывает их нужным образом, создавать формы нет никакого смысла.

PHP содержит множество средств для работы с формами. Это позволяет очень просто решать типичные задачи, которые часто возникают в веб-программировании:

  • Регистрация и аутентификация пользователя;
  • Отправка комментариев на форумах и социальных сетях;
  • Оформление заказов.

Практически любой современный сайт содержит как минимум несколько разных HTML-форм.

  • 20 октября 2022

Учебник по PHP

Учебник по PHP

  1. Знакомство с языком
    • Что такое PHP
    • Синтаксис PHP
    • Массивы
    • Циклы
    • Функции
  2. Шаблонизация и подключение файлов
    • Подключение файлов
    • Шаблонизация
  3. Протокол HTTP и формы
    • Протокол HTTP
    • Формы
    • Уязвимости
  4. Идентификация пользователя на сайте
    • Аутентификация пользователя
  5. Базы данных
    • База данных
    • SQL
    • MySQL в PHP
    • Безопасность в MySQL
  6. Объекты и использование библиотек
    • Объекты
    • Библиотеки
    • Composer
  • 10 сентября 2022

Протокол HTTP и работа с заголовками

Протокол HTTP и работа с заголовками

Весь современный веб построен на модели взаимодействия клиента и сервера. Как она работает:

  • браузер пользователя (клиент) отправляет на сервер запрос с адресом сайта (URL);
  • сервер получает запрос и отдаёт клиенту запрошенный контент.

Для реализации процесса используется универсальный протокол HTTP.

  • 10 сентября 2022

Защита от SQL-инъекций

Защита от SQL-инъекций

Внедрение SQL-кода (SQL инъекция) — один из распространённых способов взлома сайтов, работающих с базами данных. Способ основан на внедрении в запрос произвольного SQL-кода. Внедрение SQL позволяет хакеру выполнить произвольный запрос к базе данных (прочитать содержимое любых таблиц, удалить, изменить или добавить данные).

Атака этого типа возможна, когда недостаточно фильтруются входные данные при использовании в SQL-запросах.

  • 10 сентября 2022

Объекты и классы в PHP

Объекты и классы в PHP

Объекты в PHP — это просто ещё один тип данных. Объект позволяет хранить в переменной набор из свойств и их значений, а также встроенные функции. Это делает объекты похожими по своей структуре на ассоциативные массивы. Но отличие от массивов всё-таки есть, и при этом достаточно важное — объекты могут иметь внутреннее состояние.

  • 10 сентября 2022

POST

HTTP-метод POST предназначен для отправки данных на сервер. Тип тела запроса указывается в заголовке Content-Type .

Разница между PUT и POST состоит в том, что PUT является идемпотентным: повторное его применение даёт тот же результат, что и при первом применении (то есть у метода нет побочных эффектов), тогда как повторный вызов одного и того же метода POST может иметь такие эффекты, как например, оформление одного и того же заказа несколько раз.

Запрос POST обычно отправляется через форму HTML и приводит к изменению на сервере. element or the formenctype attribute of the or elements:»>В этом случае тип содержимого выбирается путём размещения соответствующей строки в атрибуте enctype элемента или formenctype атрибута элементов или :

  • application/x-www-form-urlencoded : значения кодируются в кортежах с ключом, разделённых символом ‘&’ , с ‘=’ между ключом и значением. Не буквенно-цифровые символы — percent encoded: это причина, по которой этот тип не подходит для использования с двоичными данными (вместо этого используйте multipart/form-data )
  • multipart/form-data : каждое значение посылается как блок данных («body part»), с заданными пользовательским клиентом разделителем («boundary»), разделяющим каждую часть. Эти ключи даются в заголовки Content-Disposition каждой части
  • text/plain

Когда запрос POST отправляется с помощью метода, отличного от HTML-формы, — например, через XMLHttpRequest — тело может принимать любой тип. Как описано в спецификации HTTP 1.1, POST предназначен для обеспечения единообразного метода для покрытия следующих функций:

  • Аннотация существующих ресурсов
  • Публикация сообщения на доске объявлений, в новостной группе, в списке рассылки или в аналогичной группе статей;
  • Добавление нового пользователя посредством модальности регистрации;
  • Предоставление блока данных, например, результата отправки формы, процессу обработки данных;
  • Расширение базы данных с помощью операции добавления.
Запрос имеет тело Да
Успешный ответ имеет тело Да
Безопасный Нет
Идемпотентный Нет
Кешируемый Только если включена информация о свежести сообщения
Допускается в HTML-формах Да

Синтаксис

POST /index.html

Пример

Простая форма запроса, используя стандартный application/x-www-form-urlencoded content type:

POST / HTTP/1.1 Host: foo.com Content-Type: application/x-www-form-urlencoded Content-Length: 13 say=Hi&to=Mom 

Форма запроса, используя multipart/form-data content type:

POST /test.html HTTP/1.1 Host: example.org Content-Type: multipart/form-data;boundary="boundary" --boundary Content-Disposition: form-data; name="field1" value1 --boundary Content-Disposition: form-data; name="field2"; filename="example.txt" value2 --boundary-- 

Спецификация

Specification
HTTP Semantics
# POST

Совместимость с браузерами

BCD tables only load in the browser

Смотрите также

Found a content problem with this page?

  • Edit the page on GitHub.
  • Report the content issue.
  • View the source on GitHub.

This page was last modified on 7 авг. 2023 г. by MDN contributors.

Your blueprint for a better internet.

пост-

Ср.: лат. postfactum/post factum (совершённое после чего-л., после сделанного), postscriptum/post scriptum (приписанное после чего-л., после написанного); англ. postwar (послевоенный).

См. также лат. пре- (prae-).

Анатомия терминов. 400 словообразовательных элементов из латыни и греческого: учебный словарь-справочник. — М.: НЦ ЭНАС . Быков А.А. . 2007 .

Смотреть что такое «пост-» в других словарях:

  • пост — а, м. poste m. , нем. Post <ит. posto, posta. 1. воен. Место, позиция, важные в военном отношении ( для обороны или наступления). Бирж. 111. Понеже весь бедектервег оставить весьма не надлежит, хотя бы неприятель уже и на гласизе пост взял,… … Исторический словарь галлицизмов русского языка
  • Пост — Пост: В Викисловаре есть статья «пост» Пост (военное дело) термин в военном деле. Пост должность, служебное положение, место в каком либо учреждении или на предприятии. Путевой пост разновидность раздельного пункта на железнодорожной линии … Википедия
  • пост — 1. ПОСТ, а, предлож. о посте, на посту; м. [франц. poste] 1. Место, пункт (обычно оснащённые техническими устройствами), откуда можно наблюдать за кем , чем л. или охранять кого , что л. Занять, оставить п. Обходить, проверять посты. Встать на п … Энциклопедический словарь
  • пост — [место] сущ., м., употр. нечасто Морфология: (нет) чего? поста, чему? посту, (вижу) что? пост, чем? постом, о чём? о посте и на посту; мн. что? посты, (нет) чего? постов, чему? постам, (вижу) что? посты, чем? постами, о чём? о постах 1. Пост это… … Толковый словарь Дмитриева
  • ПОСТ — 1. ПОСТ1, поста поста, о посте, на посту, мн. посты, муж. (франц. poste). 1. Ответственная должность (в органах управления; книжн.). Пост директора. Важный пост. 2. Одиночный или парный часовой или небольшая вооруженная команда, поставленные на… … Толковый словарь Ушакова
  • ПОСТ — 1. ПОСТ1, поста поста, о посте, на посту, мн. посты, муж. (франц. poste). 1. Ответственная должность (в органах управления; книжн.). Пост директора. Важный пост. 2. Одиночный или парный часовой или небольшая вооруженная команда, поставленные на… … Толковый словарь Ушакова
  • пост — ПОСТ, а, муж. 1. У верующих: воздержание на определённый срок от скоромной пищи и другие ограничения по предписанию церкви. Строгое соблюдение постов. Проводить время в посте и молитве (поститься). Вынужденный п. (перен.: о невольном голодании;… … Толковый словарь Ожегова
  • ПОСТ — (фр., от лат. ponere доставлять, ставить). 1) место, где поставлен солдат или офицер своим начальством для караула. 2) в фигур. знач., должность, отправление обязанности. 3) место исполнения служебной обязанности. Словарь иностранных слов,… … Словарь иностранных слов русского языка
  • пост — См. место. Словарь русских синонимов и сходных по смыслу выражений. под. ред. Н. Абрамова, М.: Русские словари, 1999. пост должность, место, позиция, положение; воздержанность, шутцпункт, пикет, бекет, работа, абвахта, выпрямитель, работенка,… … Словарь синонимов
  • Пост ЭЦ — Пост ЭЦ … Википедия
  • пост. — пост. постоянный Словарь: С. Фадеев. Словарь сокращений современного русского языка. С. Пб.: Политехника, 1997. 527 с. пост. поставил поставленный постановка постановщик муз. Словарь: С. Фадеев. Словарь сокращений современного русского языка. С.… … Словарь сокращений и аббревиатур

Пост (сообщение)

Пост (англ. post ; эрратив псто, поцт) — отдельно взятое сообщение в форуме. Пост верхнего уровня называется корневым, иногда сабжем (англ. subject ).

Форум — это инструмент для общения на сайте. Сообщения в форуме в чём-то похожи на почтовые — каждое из них имеет автора, дату, тему и собственно содержание. Но для того, чтобы отправить («запостить», от (англ. to post )) сообщение в форум, не нужна никакая дополнительная программа — нужно просто заполнить соответствующую форму на сайте.

Принципиальное свойство форума заключается в том, что сообщения (посты) в нём объединены в треды (англ. thread — «нить») или ветви обсуждения. Когда вы отвечаете в форуме на чье-то сообщение, ваш ответ будет «привязан» к исходному сообщению (посту). Последовательность таких ответов, ответов на ответы и т. д. и создает тред. В итоге форум представляет собой древовидную структуру, состоящую из постов и тредов.

Комментарии

Не существуют отдельно от постов. Главная задача комментария — дать возможность развёрнуто оценить ценность поста, уточнить непонятные моменты или выразить несогласие с автором. Тем не менее в отдельных случаях комментарии могут нести бо́льшую ценность, чем сам пост.

Обычно комментариями являются собственные мысли, частично выражающие мнение автора комментария. Реже — цитаты из каких-либо источников или изображения.

Комментарии носят характер предположения или личного оценочного суждения, и не являются точными сведениями, не являются информацией достойной (или недостойной) доверия.

См. также

  • Сетевой этикет
  • Дилемма Уорнока

Ссылки

  • RFC 1855 (англ.)
  • Сетевой жаргон
  • Сетевой этикет

Wikimedia Foundation . 2010 .

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *