diff options
author | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 14:42:52 -0500 |
---|---|---|
committer | Peter Bengtsson <mail@peterbe.com> | 2020-12-08 14:42:52 -0500 |
commit | 074785cea106179cb3305637055ab0a009ca74f2 (patch) | |
tree | e6ae371cccd642aa2b67f39752a2cdf1fd4eb040 /files/ru/web/http/methods | |
parent | da78a9e329e272dedb2400b79a3bdeebff387d47 (diff) | |
download | translated-content-074785cea106179cb3305637055ab0a009ca74f2.tar.gz translated-content-074785cea106179cb3305637055ab0a009ca74f2.tar.bz2 translated-content-074785cea106179cb3305637055ab0a009ca74f2.zip |
initial commit
Diffstat (limited to 'files/ru/web/http/methods')
-rw-r--r-- | files/ru/web/http/methods/connect/index.html | 82 | ||||
-rw-r--r-- | files/ru/web/http/methods/delete/index.html | 101 | ||||
-rw-r--r-- | files/ru/web/http/methods/get/index.html | 75 | ||||
-rw-r--r-- | files/ru/web/http/methods/head/index.html | 77 | ||||
-rw-r--r-- | files/ru/web/http/methods/index.html | 73 | ||||
-rw-r--r-- | files/ru/web/http/methods/options/index.html | 126 | ||||
-rw-r--r-- | files/ru/web/http/methods/patch/index.html | 100 | ||||
-rw-r--r-- | files/ru/web/http/methods/post/index.html | 122 | ||||
-rw-r--r-- | files/ru/web/http/methods/put/index.html | 104 | ||||
-rw-r--r-- | files/ru/web/http/methods/trace/index.html | 77 |
10 files changed, 937 insertions, 0 deletions
diff --git a/files/ru/web/http/methods/connect/index.html b/files/ru/web/http/methods/connect/index.html new file mode 100644 index 0000000000..755ffb6f10 --- /dev/null +++ b/files/ru/web/http/methods/connect/index.html @@ -0,0 +1,82 @@ +--- +title: CONNECT +slug: Web/HTTP/Methods/CONNECT +translation_of: Web/HTTP/Methods/CONNECT +--- +<div>{{HTTPSidebar}}</div> + +<p><strong>HTTP <code>CONNECT</code> method</strong> <span id="result_box" lang="ru"><span>запускает двустороннюю связь с запрошенным ресурсом.</span> <span>Метод можно использовать для открытия туннеля</span></span>.</p> + +<p>К примеру, метод CONNECT может использоваться для доступа к сайту, который использует {{Glossary("SSL")}} ({{Glossary("HTTPS")}}). Клиент <span id="result_box" lang="ru"><span>запрашивает HTTP-прокси-сервер для туннелирования TCP-соединения с желаемым назначением</span></span>. За тем сервер <span id="result_box" lang="ru"><span>переходит к подключению от имени клиента.</span> <span>После того, как соединение установлено сервером, прокси-сервер продолжает проксировать поток TCP к клиенту и от него.</span></span></p> + +<p><code>CONNECT</code> is a hop-by-hop method.</p> + +<table class="properties"> + <tbody> + <tr> + <th scope="row">Запрос имеет тело</th> + <td>Нет</td> + </tr> + <tr> + <th scope="row">Успешный ответ имеет тело</th> + <td>Да</td> + </tr> + <tr> + <th scope="row">{{Glossary("Безопасный")}}</th> + <td>Нет</td> + </tr> + <tr> + <th scope="row">{{Glossary("Идемпотентный")}}</th> + <td>Нет</td> + </tr> + <tr> + <th scope="row">{{Glossary("Кэшируемый")}}</th> + <td>Нет</td> + </tr> + <tr> + <th scope="row">Допускается в <a href="/en-US/docs/Web/Guide/HTML/Forms">HTML формах</a></th> + <td>Нет</td> + </tr> + </tbody> +</table> + +<h2 id="Синтаксис">Синтаксис</h2> + +<pre class="syntaxbox notranslate">CONNECT www.example.com:443 HTTP/1.1 +</pre> + +<h2 id="Пример">Пример</h2> + +<p>Некоторые прокси сервера могут запросить авторизацию для создания туннеля. Смотрите так же {{HTTPHeader("Proxy-Authorization")}}.</p> + +<pre class="line-numbers language-html notranslate">CONNECT server.example.com:80 HTTP/1.1 +Host: server.example.com:80 +Proxy-Authorization: basic aGVsbG86d29ybGQ=</pre> + +<h2 id="Спецификация">Спецификация</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Спецификация</th> + <th scope="col">Title</th> + </tr> + <tr> + <td>{{RFC("7231", "CONNECT", "4.3.6")}}</td> + <td>Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content</td> + </tr> + </tbody> +</table> + +<h2 id="Совместимость_с_браузером"><span class="short_text" id="result_box" lang="ru"><span>Совместимость с браузером</span></span></h2> + +<p class="hidden"><span id="result_box" lang="ru"><span>Таблица совместимости на этой странице создается из структурированных данных.</span> <span>Если вы хотите внести свой вклад в данные, ознакомьтесь с <a href="/en-US/docs/">https://github.com/mdn/browser-compat-data</a> и отправьте нам запрос на перенос.</span></span></p> + +<p>{{Compat("http.methods.CONNECT")}}</p> + +<h2 id="Смотрите_также">Смотрите также</h2> + +<ul> + <li>{{Glossary("Proxy server")}}</li> + <li>{{HTTPHeader("Proxy-Authorization")}}</li> +</ul> diff --git a/files/ru/web/http/methods/delete/index.html b/files/ru/web/http/methods/delete/index.html new file mode 100644 index 0000000000..e263d3c2e0 --- /dev/null +++ b/files/ru/web/http/methods/delete/index.html @@ -0,0 +1,101 @@ +--- +title: DELETE +slug: Web/HTTP/Methods/DELETE +tags: + - HTTP + - HTTP методы + - Метод запроса + - Справка +translation_of: Web/HTTP/Methods/DELETE +--- +<div>{{HTTPSidebar}}</div> + +<p><strong>Метод запроса HTTP DELETE</strong> удаляет указанный ресурс.</p> + +<table class="properties"> + <tbody> + <tr> + <th scope="row">Запрос имеет тело</th> + <td>Может</td> + </tr> + <tr> + <th scope="row">Успешный ответ имеет тело</th> + <td>Может</td> + </tr> + <tr> + <th scope="row">{{Glossary("Safe","Безопасный")}}</th> + <td>Нет</td> + </tr> + <tr> + <th scope="row">{{Glossary("Idempotent","Идемпотентный")}}</th> + <td>Да</td> + </tr> + <tr> + <th scope="row">{{Glossary("Cacheable","Кэшируемый")}}</th> + <td>Нет</td> + </tr> + <tr> + <th scope="row">Допускается в <a href="https://developer.mozilla.org/ru/docs/Learn/HTML/Forms">HTML-формах</a></th> + <td>Нет</td> + </tr> + </tbody> +</table> + +<h2 id="Синтаксис">Синтаксис</h2> + +<pre class="syntaxbox">DELETE /file.html HTTP/1.1 +</pre> + +<h2 id="Пример">Пример</h2> + +<h3 id="Запрос">Запрос</h3> + +<pre>DELETE /file.html HTTP/1.1</pre> + +<h3 id="Ответ">Ответ</h3> + +<p>Если метод <code>DELETE</code> успешно выполняется, то возможны следующие коды состояния ответа:</p> + +<ul> + <li> {{HTTPStatus("202")}} (<code>Accepted</code>) код состояния, если удаление будет успешным, но еще не выполнено.</li> + <li> {{HTTPStatus("204")}} (<code>No Content</code>) код ответа, если удаление было выполнено, но тело ответа отсутствует.</li> + <li> {{HTTPStatus("200")}} (<code>OK</code>) код ответа, если удаление было выполнено, и ответ содержит код и объект описывающий состояние.</li> +</ul> + +<pre>HTTP/1.1 200 OK +Date: Wed, 21 Oct 2015 07:28:00 GMT + +<html> + <body> + <h1>File deleted.</h1> + </body> +</html></pre> + +<h2 id="Спецификации">Спецификации</h2> + +<table class="standard-table"> + <thead> + <tr> + <th scope="col">Спецификация</th> + <th scope="col">Заголовок</th> + </tr> + </thead> + <tbody> + <tr> + <td>{{RFC("7231", "DELETE", "4.3.5")}}</td> + <td>Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content</td> + </tr> + </tbody> +</table> + +<h2 id="Поддержка_браузерами">Поддержка браузерами</h2> + +<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p> + +<p>{{Compat("http.methods.DELETE")}}</p> + +<h2 id="Смотрите_также">Смотрите также</h2> + +<ul> + <li>HTTP status: {{HTTPStatus("200")}}, {{HTTPStatus("202")}}, {{HTTPStatus("204")}}</li> +</ul> diff --git a/files/ru/web/http/methods/get/index.html b/files/ru/web/http/methods/get/index.html new file mode 100644 index 0000000000..e2601b1361 --- /dev/null +++ b/files/ru/web/http/methods/get/index.html @@ -0,0 +1,75 @@ +--- +title: GET +slug: Web/HTTP/Methods/GET +tags: + - HTTP + - Метод запроса + - Справка +translation_of: Web/HTTP/Methods/GET +--- +<div>{{HTTPSidebar}}</div> + +<p><strong>HTTP-метод <code>GET</code></strong> запрашивает представление указанного ресурса. <code>GET</code>-запросы должны только получать данные.</p> + +<table class="properties"> + <tbody> + <tr> + <th scope="row">Запрос имеет тело</th> + <td>Нет</td> + </tr> + <tr> + <th scope="row">Успешный ответ имеет тело</th> + <td>Да</td> + </tr> + <tr> + <th scope="row">{{Glossary("Safe", "Безопасный")}}</th> + <td>Да</td> + </tr> + <tr> + <th scope="row">{{Glossary("Idempotent", "Идемпотентный")}}</th> + <td>Да</td> + </tr> + <tr> + <th scope="row">{{Glossary("Cacheable", "Кэшируемый")}}</th> + <td>Да</td> + </tr> + <tr> + <th scope="row">Допускается в <a href="/ru/docs/Learn/HTML/Forms">HTML-формах</a></th> + <td>Да</td> + </tr> + </tbody> +</table> + +<h2 id="Синтаксис">Синтаксис</h2> + +<pre class="syntaxbox">GET /index.html +</pre> + +<h2 id="Спецификации">Спецификации</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Спецификация</th> + <th scope="col">Заголовок</th> + </tr> + <tr> + <td>{{RFC("7231", "GET", "4.3.1")}}</td> + <td>Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content</td> + </tr> + </tbody> +</table> + +<h2 id="Поддержка_браузерами">Поддержка браузерами</h2> + +<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p> + +<p>{{Compat("http.methods.GET")}}</p> + +<h2 id="Смотрите_также">Смотрите также</h2> + +<ul> + <li><a href="/ru/docs/Web/HTTP/%D0%97%D0%B0%D0%B3%D0%BE%D0%BB%D0%BE%D0%B2%D0%BA%D0%B8">HTTP Заголовки</a></li> + <li>{{HTTPHeader("Range")}}</li> + <li><a href="/ru/docs/Web/HTTP/Methods/POST">POST</a></li> +</ul> diff --git a/files/ru/web/http/methods/head/index.html b/files/ru/web/http/methods/head/index.html new file mode 100644 index 0000000000..13bfe278a6 --- /dev/null +++ b/files/ru/web/http/methods/head/index.html @@ -0,0 +1,77 @@ +--- +title: HEAD +slug: Web/HTTP/Methods/HEAD +tags: + - HTTP + - Метод запроса + - Справка +translation_of: Web/HTTP/Methods/HEAD +--- +<div>{{HTTPSidebar}}</div> + +<p><strong>HTTP-метод <code>HEAD</code></strong> запрашивает заголовки, идентичные тем, что возвращаются, если указанный ресурс будет запрошен с помощью HTTP-метода {{HTTPMethod("GET")}}. Такой запрос может быть выполнен перед загрузкой большого ресурса, например, для экономии пропускной способности.</p> + +<p>Ответ на метод <code>HEAD</code> не должен содержать тело. Если это не так, то его следует игнорировать. Но даже в этом случае {{glossary("Entity header", "заголовки сущности")}}, описывающие содержимое тела, например {{HTTPHeader("Content-Length")}}, должны быть включены в ответ. Они не относятся к телу ответа на запрос <code>HEAD</code>, которое должно быть пустым, они относятся к телу ответа, полученный на аналогичный запрос с помощью метода {{HTTPMethod("GET")}}.</p> + +<p>Если результат запроса <code>HEAD</code> показывает, что кешированный после запроса {{HTTPMethod("GET")}} ресурс устарел, то кеш становится недействительным, даже если запрос <code>GET</code> не был сделан.</p> + +<table class="properties"> + <tbody> + <tr> + <th scope="row">Запрос имеет тело</th> + <td>Нет</td> + </tr> + <tr> + <th scope="row">Успешный ответ имеет тело</th> + <td>Нет</td> + </tr> + <tr> + <th scope="row">{{Glossary("Safe", "Безопасный")}}</th> + <td>Да</td> + </tr> + <tr> + <th scope="row">{{Glossary("Idempotent", "Идемпотентный")}}</th> + <td>Да</td> + </tr> + <tr> + <th scope="row">{{Glossary("Cacheable", "Кэшируемый")}}</th> + <td>Да</td> + </tr> + <tr> + <th scope="row">Допускается в <a href="/ru/docs/Learn/HTML/Forms">HTML-формах</a></th> + <td>Нет</td> + </tr> + </tbody> +</table> + +<h2 id="Синтаксис">Синтаксис</h2> + +<pre class="syntaxbox">HEAD /index.html +</pre> + +<h2 id="Спецификация">Спецификация</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Спецификация</th> + <th scope="col">Заголовок</th> + </tr> + <tr> + <td>{{RFC("7231", "HEAD", "4.3.2")}}</td> + <td>Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content</td> + </tr> + </tbody> +</table> + +<h2 id="Совместимость_с_браузерами">Совместимость с браузерами</h2> + +<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p> + +<p>{{Compat("http.methods.HEAD")}}</p> + +<h2 id="Смотрите_также">Смотрите также</h2> + +<ul> + <li>{{HTTPMethod("GET")}}</li> +</ul> diff --git a/files/ru/web/http/methods/index.html b/files/ru/web/http/methods/index.html new file mode 100644 index 0000000000..67369bdad6 --- /dev/null +++ b/files/ru/web/http/methods/index.html @@ -0,0 +1,73 @@ +--- +title: Методы HTTP запроса +slug: Web/HTTP/Methods +tags: + - HTTP + - Methods + - Reference +translation_of: Web/HTTP/Methods +--- +<p>{{HTTPSidebar}}</p> + +<p>HTTP определяет множество <strong>методов запроса</strong>, которые указывают, какое желаемое действие выполнится для данного ресурса. Несмотря на то, что их названия могут быть существительными, эти методы запроса иногда называются <em>HTTP глаголами</em>. Каждый реализует свою семантику, но каждая группа команд разделяет общие свойства: так, методы могут быть {{glossary("safe", "безопасными")}}, {{glossary("idempotent", "идемпотентными")}} или {{glossary("cacheable", "кэшируемыми")}}.</p> + +<dl> + <dt><code><a href="/ru/docs/Web/HTTP/Methods/GET">GET</a></code></dt> + <dd>Метод <code>GET</code> запрашивает представление ресурса. Запросы с использованием этого метода могут только извлекать данные.</dd> + <dt><code><a href="/en-US/docs/Web/HTTP/Methods/HEAD">HEAD</a></code></dt> + <dd><code>HEAD</code> запрашивает ресурс так же, как и метод GET, но без тела ответа.</dd> + <dt><code><a href="/ru/docs/Web/HTTP/Methods/POST">POST</a></code></dt> + <dd><code>POST</code> используется для отправки сущностей к определённому ресурсу. Часто вызывает изменение состояния или какие-то побочные эффекты на сервере.</dd> + <dt><code><a href="/ru/docs/Web/HTTP/Methods/PUT">PUT</a></code></dt> + <dd> + <p><code>PUT</code> заменяет все текущие представления ресурса данными запроса.</p> + </dd> + <dt><code><a href="/en-US/docs/Web/HTTP/Methods/DELETE">DELETE</a></code></dt> + <dd><code>DELETE</code> удаляет указанный ресурс.</dd> + <dt><code><a href="/en-US/docs/Web/HTTP/Methods/CONNECT">CONNECT</a></code></dt> + <dd> + <p><code>CONNECT</code> устанавливает "туннель" к серверу, определённому по ресурсу.</p> + </dd> + <dt><code><a href="/ru/docs/Web/HTTP/Methods/OPTIONS">OPTIONS</a></code></dt> + <dd><code>OPTIONS</code> используется для описания параметров соединения с ресурсом.</dd> + <dt><code><a href="/en-US/docs/Web/HTTP/Methods/TRACE">TRACE</a></code></dt> + <dd> + <p><code>TRACE</code> выполняет вызов возвращаемого тестового сообщения с ресурса.</p> + </dd> + <dt><code><a href="/en-US/docs/Web/HTTP/Methods/PATCH">PATCH</a></code></dt> + <dd><code>PATCH</code> используется для частичного изменения ресурса.</dd> +</dl> + +<h2 id="Спецификации">Спецификации</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Спецификация</th> + <th scope="col">Название</th> + <th scope="col">Комментарий</th> + </tr> + <tr> + <td>{{RFC("7231", "Request methods", "4")}}</td> + <td>Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content</td> + <td>Определение GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE.</td> + </tr> + <tr> + <td>{{RFC("5789", "Patch method", "2")}}</td> + <td>PATCH метод для HTTP</td> + <td>Определение PATCH.</td> + </tr> + </tbody> +</table> + +<h2 id="Совместимость_с_браузерами">Совместимость с браузерами</h2> + +<p class="hidden">To contribute to this compatibility data, please write a pull request against this file: <a href="https://github.com/mdn/browser-compat-data/blob/master/http/methods.json">https://github.com/mdn/browser-compat-data/blob/master/http/methods.json</a>.</p> + +<p>{{Compat}}</p> + +<h2 id="Смотрите_также">Смотрите также</h2> + +<ul> + <li><a href="/ru/docs/Web/HTTP/Заголовки">HTTP заголовки</a></li> +</ul> diff --git a/files/ru/web/http/methods/options/index.html b/files/ru/web/http/methods/options/index.html new file mode 100644 index 0000000000..7df81b0124 --- /dev/null +++ b/files/ru/web/http/methods/options/index.html @@ -0,0 +1,126 @@ +--- +title: OPTIONS +slug: Web/HTTP/Methods/OPTIONS +tags: + - HTTP + - Метод запроса + - Справка +translation_of: Web/HTTP/Methods/OPTIONS +--- +<div>{{HTTPSidebar}}</div> + +<p><strong>HTTP-метод</strong><strong> <code>OPTIONS</code> </strong>используется для описания параметров соединения с целевым ресурсом. Клиент может указать особый URL для обработки метода OPTIONS, или * (зведочку) чтобы указать весь сервер целиком.</p> + +<table class="properties"> + <tbody> + <tr> + <th scope="row">Запрос имеет тело</th> + <td>Нет</td> + </tr> + <tr> + <th scope="row">Успешный ответ имеет тело</th> + <td>Да</td> + </tr> + <tr> + <th scope="row">{{Glossary("Safe", "Безопасный")}}</th> + <td>Да</td> + </tr> + <tr> + <th scope="row">{{Glossary("Idempotent", "Идемпотентный")}}</th> + <td>Да</td> + </tr> + <tr> + <th scope="row">{{Glossary("Cacheable", "Кэшируемый")}}</th> + <td>Нет</td> + </tr> + <tr> + <th scope="row">Допускается в <a href="/ru/docs/Learn/HTML/Forms">HTML-формах</a></th> + <td>Нет</td> + </tr> + </tbody> +</table> + +<h2 id="Синтаксис">Синтаксис</h2> + +<pre class="syntaxbox">OPTIONS /index.html HTTP/1.1 +OPTIONS * HTTP/1.1 +</pre> + +<h2 id="Примеры">Примеры</h2> + +<h3 id="Определение_разрешенных_сервером_методов_запроса">Определение разрешенных сервером методов запроса</h3> + +<p>Для того, чтобы узнать какие методы запросов поддерживаются сервером, можно возпользоваться curl направить OPTIONS запрос:</p> + +<pre>curl -X OPTIONS http://example.org -i</pre> + +<p>Ответ на запрос содержит {{HTTPHeader("Allow")}} заголовок с поддерживаемыми методами:</p> + +<pre>HTTP/1.1 200 OK +Allow: OPTIONS, GET, HEAD, POST +Cache-Control: max-age=604800 +Date: Thu, 13 Oct 2016 11:45:00 GMT +Expires: Thu, 20 Oct 2016 11:45:00 GMT +Server: EOS (lax004/2813) +x-ec-custom-error: 1 +Content-Length: 0 +</pre> + +<h3 id="Предзапросы_по_технологии_CORS">Предзапросы по технологии CORS</h3> + +<p>По технологии <a href="/en-US/docs/Web/HTTP/Access_control_CORS">CORS</a>, с помощью метода <code>OPTIONS</code> направляется предварительный запрос, поэтому сервер может ответить приемлемо ли отправлять запросы этим методом. {{HTTPHeader("Access-Control-Request-Method")}} заголовок уведомляет сервер в составе предварительного запроса о том что, запрос <code>OPTIONS</code> будет отправляться на сервер вместе с <code>POST</code> запросом. {{HTTPHeader("Access-Control-Request-Headers")}} заголовок уведомляет сервер о том, что при отправке фактического запроса, он будет отправлен с помощью пользовательских заголовков <code>X-PINGOTHER</code> и <code>Content-Type</code>. В этом случае сервер имеет возможность определять возможно ли принять запрос с такими параметрами.</p> + +<pre>OPTIONS /resources/post-here/ HTTP/1.1 +Host: bar.other +Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 +Accept-Language: en-us,en;q=0.5 +Accept-Encoding: gzip,deflate +Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 +Connection: keep-alive +Origin: http://foo.example +Access-Control-Request-Method: POST +Access-Control-Request-Headers: X-PINGOTHER, Content-Type</pre> + +<p>Ответ сервера содержит параметр {{HTTPHeader("Access-Control-Allow-Methods")}} и сообщает, что <code>POST</code>, <code>GET</code>, и <code>OPTIONS</code> методы являются приемлемыми для данного ресурса. Этот заголовок похож на заголовок {{HTTPHeader("Allow")}} , но используется строго в контексте CORS.</p> + +<pre>HTTP/1.1 200 OK +Date: Mon, 01 Dec 2008 01:15:39 GMT +Server: Apache/2.0.61 (Unix) +Access-Control-Allow-Origin: http://foo.example +Access-Control-Allow-Methods: POST, GET, OPTIONS +Access-Control-Allow-Headers: X-PINGOTHER, Content-Type +Access-Control-Max-Age: 86400 +Vary: Accept-Encoding, Origin +Content-Encoding: gzip +Content-Length: 0 +Keep-Alive: timeout=2, max=100 +Connection: Keep-Alive +Content-Type: text/plain</pre> + +<h2 id="Спецификации">Спецификации</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Спецификация</th> + <th scope="col">Заголовок</th> + </tr> + <tr> + <td>{{RFC("7231", "OPTIONS", "4.3.7")}}</td> + <td>Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content</td> + </tr> + </tbody> +</table> + +<h2 id="Совместимость_с_браузерами">Совместимость с браузерами</h2> + +<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p> + +<p>{{Compat("http.methods.OPTIONS")}}</p> + +<h2 id="Смотрите_также">Смотрите также</h2> + +<ul> + <li>{{HTTPHeader("Allow")}} заголовок</li> + <li><a href="/en-US/docs/Web/HTTP/Access_control_CORS">CORS</a></li> +</ul> diff --git a/files/ru/web/http/methods/patch/index.html b/files/ru/web/http/methods/patch/index.html new file mode 100644 index 0000000000..bbf8a73ad6 --- /dev/null +++ b/files/ru/web/http/methods/patch/index.html @@ -0,0 +1,100 @@ +--- +title: PATCH +slug: Web/HTTP/Methods/PATCH +tags: + - HTTP + - HTTP метод + - Методы запроса + - Справка +translation_of: Web/HTTP/Methods/PATCH +--- +<div>{{HTTPSidebar}}</div> + +<p><strong>Метод запроса HTTP <code>PATCH</code></strong> частично изменяет ресурс.</p> + +<p>В какой-то степени <code>PATCH</code> можно назвать аналогом концепта «обновить» (update) из {{Glossary("CRUD")}} (но не стоит путать HTTP и {{Glossary("CRUD")}} — это две разные вещи).</p> + +<p><code>PATCH</code> может как быть идемпотентным, так и не быть, в отличие от {{HTTPMethod("PUT")}}, который всегда идемпотентен. Операция считается идемпотентной, если её многократное выполнение приводит к тому же результату, что и однократное выполнение. Например, если автоинкрементное поле является важной частью ресурса, то {{HTTPMethod("PUT")}} перезапишет его (т.к. он перезаписывает всё), но <code>PATCH</code> может и не перезаписать.</p> + +<p><code>PATCH</code> (как и <code>PUT</code>) <em>может</em> иметь побочные эффекты на другие ресурсы.</p> + +<p>Чтобы обозначить, что сервер поддерживает <code>PATCH</code>, можно добавить этот метод в список заголовков ответа {{HTTPHeader("Allow")}} или {{HTTPHeader("Access-Control-Allow-Methods")}} (для CORS).</p> + +<p>Другой (неявный) индикатор, что <code>PATCH</code> разрешён, является наличие заголовка {{HTTPHeader("Accept-Patch")}}, где описано, в каком формате сервер принимает измененные документы.</p> + +<table class="properties"> + <tbody> + <tr> + <th scope="row">Запрос имеет тело</th> + <td>Да</td> + </tr> + <tr> + <th scope="row">Успешный ответ имеет тело</th> + <td>Да</td> + </tr> + <tr> + <th scope="row">{{Glossary("Safe", "Безопасный")}}</th> + <td>Нет</td> + </tr> + <tr> + <th scope="row">{{Glossary("Idempotent", "Идемпотентный")}}</th> + <td>Нет</td> + </tr> + <tr> + <th scope="row">{{Glossary("Cacheable", "Кэшируемый")}}</th> + <td>Нет</td> + </tr> + <tr> + <th scope="row">Допускается в <a href="/ru/docs/Learn/HTML/Forms">HTML-формах</a></th> + <td>Нет</td> + </tr> + </tbody> +</table> + +<h2 id="Синтаксис">Синтаксис</h2> + +<pre class="syntaxbox notranslate">PATCH /file.txt HTTP/1.1 +</pre> + +<h2 id="Пример">Пример</h2> + +<h3 id="Запрос">Запрос</h3> + +<pre class="line-numbers language-html notranslate">PATCH /file.txt HTTP/1.1 +Host: www.example.com +Content-Type: application/example +If-Match: "e0023aa4e" +Content-Length: 100 + +[описание изменений]</pre> + +<h3 id="Ответ">Ответ</h3> + +<p>Успешный ответ указывается с помощью кода ответа {{HTTPStatus("204")}}, поскольку ответ в примере не содержит тела сообщения. А если бы содержал, то код был бы {{HTTPStatus("200")}}.</p> + +<pre class="newpage notranslate">HTTP/1.1 204 No Content +Content-Location: /file.txt +ETag: "e0023aa4f"</pre> + +<h2 id="Спецификации">Спецификации</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Спецификация</th> + <th scope="col">Заголовок</th> + </tr> + <tr> + <td>{{RFC("5789", "PATCH")}}</td> + <td>PATCH Method for HTTP</td> + </tr> + </tbody> +</table> + +<h2 id="Смотрите_также">Смотрите также</h2> + +<ul> + <li>{{HTTPStatus("204")}}</li> + <li>{{HTTPHeader("Allow")}}, {{HTTPHeader("Access-Control-Allow-Methods")}}</li> + <li>{{HTTPHeader("Accept-Patch")}} – указывает изменяемые типы документов принимаемые сервером.</li> +</ul> diff --git a/files/ru/web/http/methods/post/index.html b/files/ru/web/http/methods/post/index.html new file mode 100644 index 0000000000..5e0778692d --- /dev/null +++ b/files/ru/web/http/methods/post/index.html @@ -0,0 +1,122 @@ +--- +title: POST +slug: Web/HTTP/Methods/POST +tags: + - HTTP + - Метод запроса + - Справка +translation_of: Web/HTTP/Methods/POST +--- +<div>{{HTTPSidebar}}</div> + +<p><strong>HTTP-метод <code>POST</code></strong> предназначен для отправки данных на сервер. Тип тела запроса указывается в заголовке {{HTTPHeader("Content-Type")}}.</p> + +<p>Разница между {{HTTPMethod("PUT")}} и <code>POST</code> состоит в том, что <code>PUT</code> является идемпотентным: повторное его применение дает тот же результат, что и при первом применении (то есть у метода нет <em>побочных эффектов</em>), тогда как повторный вызов одного и того же метода <code>POST</code> может иметь такие эффекты, как например, оформление одного и того же заказа несколько раз.</p> + +<p><span id="result_box" lang="ru"><span title="A POST request is typically sent via an HTML form and results in a change on the server.">Запрос <code>POST</code> обычно отправляется через форму HTML и приводит к изменению на сервере. </span><span title="In this case, the content type is selected by putting the adequate string in the enctype attribute of the <form> element or the formenctype attribute of the <input> or <button> elements:">В этом случае тип содержимого выбирается путем размещения соответствующей строки в атрибуте {{htmlattrxref ("enctype", "form")}} элемента {{HTMLElement ("form")}} или {{htmlattrxref ("formenctype", "input")}} атрибута элементов {{HTMLElement ("input")}} или {{HTMLElement ("button")}}:</span></span></p> + +<ul> + <li><span title="application/x-www-form-urlencoded: the values are encoded in key-value tuples separated by '&', with a '=' between the key and the value."><code>application/x-www-form-urlencoded</code>: значения кодируются в кортежах с ключом, разделенных символом <code>'&'</code>, с <code>'='</code> между ключом и значением. </span><span title="Non-alphanumeric characters are percent encoded: this is the reason why this type is not suitable to use with binary data (use multipart/form-data instead)">Не буквенно-цифровые символы - {{glossary ("percent encoded")}}: это причина, по которой этот тип не подходит для использования с двоичными данными (вместо этого используйте <code>multipart/form-data</code>)</span></li> + <li><code><span title="multipart/form-data">multipart/form-data</span></code>: каждое значение посылается как блок данных ("body part"), с заданными пользовательским клиентом разделителем ("boundary"), разделяющим каждую часть. Эти ключи даются в заголовки <code>Content-Disposition</code> каждой части</li> + <li><code><span title="text/plain">text/plain</span></code></li> +</ul> + +<p><span title="When the POST request is sent via a method other than an HTML form — like via an XMLHttpRequest — the body can take any type.">Когда запрос <code>POST</code> отправляется с помощью метода, отличного от HTML-формы, </span><span title="When the POST request is sent via a method other than an HTML form — like via an XMLHttpRequest — the body can take any type.">— например, через {{domxref ("XMLHttpRequest")}} </span><span title="When the POST request is sent via a method other than an HTML form — like via an XMLHttpRequest — the body can take any type.">— тело может принимать любой тип. </span><span title="As described in the HTTP 1.1 specification, POST is designed to allow a uniform method to cover the following functions:">Как описано в спецификации HTTP 1.1, <code>POST</code> предназначен для обеспечения единообразного метода для покрытия следующих функций:</span></p> + +<ul> + <li><span id="result_box" lang="ru"><span>Аннотация существующих ресурсов</span></span></li> + <li><span id="result_box" lang="ru"><span>Публикация сообщения на доске объявлений, в новостной группе, в списке рассылки или в аналогичной группе статей;</span></span></li> + <li><span id="result_box" lang="ru"><span>Добавление нового пользователя посредством модальности регистрации;</span></span></li> + <li><span id="result_box" lang="ru"><span>Предоставление блока данных, например, результата отправки формы, процессу обработки данных;</span></span></li> + <li><span id="result_box" lang="ru"><span>Расширение базы данных с помощью операции добавления.</span></span></li> +</ul> + +<table class="properties"> + <tbody> + <tr> + <th scope="row">Запрос имеет тело</th> + <td>Да</td> + </tr> + <tr> + <th scope="row">Успешный ответ имеет тело</th> + <td>Да</td> + </tr> + <tr> + <th scope="row">{{Glossary("Safe", "Безопасный")}}</th> + <td>Нет</td> + </tr> + <tr> + <th scope="row">{{Glossary("Idempotent", "Идемпотентный")}}</th> + <td>Нет</td> + </tr> + <tr> + <th scope="row">{{Glossary("Cacheable", "Кэшируемый")}}</th> + <td>Только если включена информация о свежести сообщения</td> + </tr> + <tr> + <th scope="row">Допускается в <a href="/ru/docs/Learn/HTML/Forms">HTML-формах</a></th> + <td>Да</td> + </tr> + </tbody> +</table> + +<h2 id="Синтаксис">Синтаксис</h2> + +<pre class="syntaxbox">POST /index.html</pre> + +<h2 id="Пример">Пример</h2> + +<p>Простая форма запроса, используя стандартный <code>application/x-www-form-urlencoded</code> content type:</p> + +<pre class="line-numbers language-html">POST / HTTP/1.1 +Host: foo.com +Content-Type: application/x-www-form-urlencoded +Content-Length: 13 + +say=Hi&to=Mom</pre> + +<p>Форма запроса, используя <code>multipart/form-data</code> content type:</p> + +<pre>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-- +</pre> + +<h2 id="Спецификация">Спецификация</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Спецификация</th> + <th scope="col">Заголовок</th> + </tr> + <tr> + <td>{{RFC("7231", "POST", "4.3.3")}}</td> + <td>Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content</td> + </tr> + </tbody> +</table> + +<h2 id="Совместимость_с_браузерами">Совместимость с браузерами</h2> + +<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p> + +<p>{{Compat("http.methods.POST")}}</p> + +<h2 id="Смотрите_также">Смотрите также</h2> + +<ul> + <li>{{HTTPHeader("Content-Type")}}</li> + <li>{{HTTPHeader("Content-Disposition")}}</li> + <li><a href="/ru/docs/Web/HTTP/Methods/GET">GET</a></li> +</ul> diff --git a/files/ru/web/http/methods/put/index.html b/files/ru/web/http/methods/put/index.html new file mode 100644 index 0000000000..5c89a7887c --- /dev/null +++ b/files/ru/web/http/methods/put/index.html @@ -0,0 +1,104 @@ +--- +title: PUT +slug: Web/HTTP/Methods/PUT +tags: + - HTTP + - HTTP методы + - Метод запроса + - Справка +translation_of: Web/HTTP/Methods/PUT +--- +<div>{{HTTPSidebar}}</div> + +<div><strong>Метод запроса HTTP PUT</strong> создает новый ресурс или заменяет представление целевого ресурса, данными представленными в теле запроса.</div> + +<div></div> + +<p>Разница между <code>PUT</code> и {{HTTPMethod("POST")}} в том, что <code>PUT</code> является идемпотентным, т.е. единичный и множественные вызовы этого метода, с идентичным набором данных, будут иметь тот же результат выполнения (без сторонних эффектов), в случае с <code>POST</code>, множественный вызов с идентичным набором данных может повлечь за собой сторонние эффекты.</p> + +<table class="properties"> + <tbody> + <tr> + <th scope="row">Запрос имеет тело</th> + <td>Да</td> + </tr> + <tr> + <th scope="row">Успешный ответ имеет тело</th> + <td>Нет</td> + </tr> + <tr> + <th scope="row">{{Glossary("Safe", "Безопасный")}}</th> + <td>Нет</td> + </tr> + <tr> + <th scope="row">{{Glossary("Idempotent", "Идемпотентный")}}</th> + <td>Да</td> + </tr> + <tr> + <th scope="row">{{Glossary("Cacheable", "Кэшируемый")}}</th> + <td>Нет</td> + </tr> + <tr> + <th scope="row">Допускается в <a href="/ru/docs/Learn/HTML/Forms">HTML-формах</a></th> + <td>Нет</td> + </tr> + </tbody> +</table> + +<h2 id="Синтаксис">Синтаксис</h2> + +<pre class="syntaxbox">PUT /new.html HTTP/1.1 +</pre> + +<h2 id="Пример">Пример</h2> + +<h3 id="Запрос">Запрос</h3> + +<pre>PUT /new.html HTTP/1.1 +Host: example.com +Content-type: text/html +Content-length: 16 + +<p>Новый файл</p></pre> + +<h3 id="Ответ">Ответ</h3> + +<p>Если целевой ресурс не содержит отправляемой сущности и <code>PUT</code> запрос создает ее, то сервер должен проинформировать клиентское приложение о создании, отправив в ответ {{HTTPStatus("201")}} (<code>Created</code>).</p> + +<pre class="newpage">HTTP/1.1 201 Created +Content-Location: /new.html +</pre> + +<p>Если целевой ресур содержит отправляемую сущность и сущность была успешно мутирована (обновлена), в соответствии с прилагаемыми в теле запроса данными, то сервер должен отправить или {{HTTPStatus("200")}} (<code>OK</code>), или {{HTTPStatus("204")}} (<code>No Content</code>) для информирования об успешном завершении запроса.</p> + +<pre>HTTP/1.1 204 No Content +Content-Location: /existing.html +</pre> + +<h2 id="Спецификации">Спецификации</h2> + +<table class="standard-table"> + <tbody> + <tr> + <th scope="col">Спецификация</th> + <th scope="col">Заголовок</th> + </tr> + <tr> + <td>{{RFC("7231", "PUT", "4.3.4")}}</td> + <td>Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content</td> + </tr> + </tbody> +</table> + +<h2 id="Поддержка_браузеров">Поддержка браузеров</h2> + +<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p> + +<p>{{Compat("http.methods.PUT")}}</p> + +<h2 id="Смотрите_также">Смотрите также</h2> + +<ul> + <li>{{HTTPStatus("201")}}</li> + <li>{{HTTPStatus("204")}}</li> +</ul> diff --git a/files/ru/web/http/methods/trace/index.html b/files/ru/web/http/methods/trace/index.html new file mode 100644 index 0000000000..9bf1686106 --- /dev/null +++ b/files/ru/web/http/methods/trace/index.html @@ -0,0 +1,77 @@ +--- +title: TRACE +slug: Web/HTTP/Methods/TRACE +tags: + - HTTP + - Метод трассировки + - Справка +translation_of: Web/HTTP/Methods/TRACE +--- +<div>{{HTTPSidebar}}</div> + +<p><strong>HTTP Метод <code>TRACE</code></strong> выполняет проверку обратной связи по пути к целевому ресурсу, предоставляя полезный механизм отладки.</p> + +<p>Конечный получатель запроса должен отразить полученное сообщение, исключая некоторые поля описанные ниже, назад клиенту как тело сообщения с ответом 200 (<code>OK</code>) с заголовком {{httpheader("Content-Type")}} <code>message/http</code>. Конечный получатель это либо исходный сервер, либо первый сервер получивший значение {{httpheader("Max-Forwards")}} в запросе.</p> + +<table class="properties"> + <tbody> + <tr> + <th scope="row">Запрос имеет тело</th> + <td>Нет</td> + </tr> + <tr> + <th scope="row">Успешный ответ имеет тело</th> + <td>Нет</td> + </tr> + <tr> + <th scope="row">{{Glossary("Safe", "Безопасный")}}</th> + <td>Нет</td> + </tr> + <tr> + <th scope="row">{{Glossary("Idempotent", "Идемпотентный")}}</th> + <td>Да</td> + </tr> + <tr> + <th scope="row">{{Glossary("Cacheable", "Кэшируемый")}}</th> + <td>Нет</td> + </tr> + <tr> + <th scope="row">Допускается в <a href="/ru/docs/Learn/HTML/Forms">HTML-формах</a></th> + <td>Нет</td> + </tr> + </tbody> +</table> + +<h2 id="Синтаксис">Синтаксис</h2> + +<pre class="syntaxbox">TRACE /index.html +</pre> + +<h2 id="Спецификация">Спецификация</h2> + +<table class="standard-table"> + <thead> + <tr> + <th scope="col">Спецификация</th> + <th scope="col">Заголовок</th> + </tr> + </thead> + <tbody> + <tr> + <td>{{RFC("7231", "TRACE", "4.3.8")}}</td> + <td>Hypertext Transfer Protocol (HTTP/1.1): Semantics and Content</td> + </tr> + </tbody> +</table> + +<h2 id="Поддержка_браузерами">Поддержка браузерами</h2> + +<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p> + +<p>{{Compat("http.methods.TRACE")}}</p> + +<h2 id="Смотрите_также">Смотрите также</h2> + +<ul> + <li><a href="/ru/docs/Web/HTTP/Methods">HTTP methods</a></li> +</ul> |