POST
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since иÑÐ»Ñ 2015 г..
HTTP-меÑод POST пÑедназнаÑен Ð´Ð»Ñ Ð¾ÑпÑавки даннÑÑ
на ÑеÑвеÑ. Тип Ñела запÑоÑа ÑказÑваеÑÑÑ Ð² заголовке Content-Type.
РазниÑа Ð¼ÐµÐ¶Ð´Ñ PUT и POST ÑоÑÑÐ¾Ð¸Ñ Ð² Ñом, ÑÑо PUT ÑвлÑеÑÑÑ Ð¸Ð´ÐµÐ¼Ð¿Ð¾ÑенÑнÑм: повÑоÑное его пÑименение даÑÑ ÑÐ¾Ñ Ð¶Ðµ ÑезÑлÑÑаÑ, ÑÑо и пÑи пеÑвом пÑименении (Ñо еÑÑÑ Ñ Ð¼ÐµÑода Ð½ÐµÑ Ð¿Ð¾Ð±Ð¾ÑнÑÑ
ÑÑÑекÑов), Ñогда как повÑоÑнÑй вÑзов одного и Ñого же меÑода POST Ð¼Ð¾Ð¶ÐµÑ Ð¸Ð¼ÐµÑÑ Ñакие ÑÑÑекÑÑ, как напÑимеÑ, оÑоÑмление одного и Ñого же заказа неÑколÑко Ñаз.
ÐапÑÐ¾Ñ POST обÑÑно оÑпÑавлÑеÑÑÑ ÑеÑез ÑоÑÐ¼Ñ HTML и пÑÐ¸Ð²Ð¾Ð´Ð¸Ñ Ðº Ð¸Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð½Ð° ÑеÑвеÑе. element or the formenctype attribute of the <input> or <button> elements:">Ð ÑÑом ÑлÑÑае Ñип ÑодеÑжимого вÑбиÑаеÑÑÑ Ð¿ÑÑÑм ÑазмеÑÐµÐ½Ð¸Ñ ÑооÑвеÑÑÑвÑÑÑей ÑÑÑоки в аÑÑибÑÑе enctype ÑлеменÑа <form> или formenctype аÑÑибÑÑа ÑлеменÑов <input> или <button>:
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 > |