aboutsummaryrefslogtreecommitdiff
path: root/files/pt-br/web/http/methods/patch/index.html
blob: 3f97a7c3294e73e3ea416f1dcb3493042420b8c5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
---
title: PATCH
slug: Web/HTTP/Methods/PATCH
tags:
  - HTTP
  - Método HTTP
  - Referencia
  - Rest
  - patch
translation_of: Web/HTTP/Methods/PATCH
---
<div>{{HTTPSidebar}}</div>

<p>O <strong>método de requisição HTTP PATCH</strong> aplica modificações parciais a um recurso.</p>

<p>O método HTTP {{HTTPMethod("PUT")}} permite apenas substituições completas de um documento. Em contraste ao <code>PUT</code>, o método <code>PATCH</code> não é <span class="short_text" id="result_box" lang="pt"><span>idempotente</span></span>, ou seja, requisições sucessivas idênticas <em>podem</em> obter efeitos distintos. Todavia, é possível realizar requisições <code>PATCH</code> de modo a serem <span class="short_text" id="result_box" lang="pt"><span>idempotentes</span></span>.</p>

<p><code>PATCH</code> (assim como <code>PUT</code>) podem ter efeitos colaterais em outros recursos.</p>

<p>Para descobrir se um servidor dá suporte a <code>PATCH</code>, um servidor pode divulgar seu suporte adicionando tal suporte à lista no cabeçalho de resposta HTTP {{HTTPHeader("Allow")}} ou {{HTTPHeader("Access-Control-Allow-Methods")}} (para CORS).</p>

<p>Outra indicação (implícita)  da permissão de PATCH é a presença do cabeçalho {{HTTPHeader("Accept-Patch")}}, que especifica o formato do documento patch aceito pelo servidor.</p>

<table class="properties">
 <tbody>
  <tr>
   <th scope="row">Requisição possui corpo</th>
   <td>Sim</td>
  </tr>
  <tr>
   <th scope="row">Resposta sucedida possui corpo</th>
   <td>Sim</td>
  </tr>
  <tr>
   <th scope="row">{{Glossary("Safe")}}</th>
   <td>Não</td>
  </tr>
  <tr>
   <th scope="row">{{Glossary("Idempotent")}}</th>
   <td>Não</td>
  </tr>
  <tr>
   <th scope="row">{{Glossary("Cacheable")}}</th>
   <td>Não</td>
  </tr>
  <tr>
   <th scope="row">Permitido em <a href="/en-US/docs/Web/Guide/HTML/Forms">formulários HTML</a></th>
   <td>Não</td>
  </tr>
 </tbody>
</table>

<h2 id="Sintaxe">Sintaxe</h2>

<pre class="syntaxbox">PATCH /file.txt HTTP/1.1
</pre>

<h2 id="Exemplo">Exemplo</h2>

<h3 id="Requisição">Requisição</h3>

<pre class="line-numbers  language-html">PATCH /file.txt HTTP/1.1
Host: www.example.com
Content-Type: application/example
If-Match: "e0023aa4e"
Content-Length: 100

[descrição das mudanças]</pre>

<h3 id="Resposta">Resposta</h3>

<p>Uma resposta sucedida é indicada pelo <em>status </em>de resposta {{HTTPStatus("204")}}, visto que a resposta não carrega um corpo de mensagem.</p>

<pre class="newpage">HTTP/1.1 204 No Content
Content-Location: /arquivo.txt
ETag: "e0023aa4f"</pre>

<h2 id="Especificações">Especificações</h2>

<table class="standard-table">
 <tbody>
  <tr>
   <th scope="col">Especificação</th>
   <th scope="col">Título</th>
  </tr>
  <tr>
   <td>{{RFC("5789", "PATCH")}}</td>
   <td>PATCH Method for HTTP</td>
  </tr>
 </tbody>
</table>

<h2 id="Veja_também">Veja também</h2>

<ul>
 <li>{{HTTPStatus("204")}}</li>
 <li>{{HTTPHeader("Allow")}}, {{HTTPHeader("Access-Control-Allow-Methods")}}</li>
 <li>{{HTTPHeader("Accept-Patch")}} – Especifica o  documento patch aceito pelo servidor.</li>
</ul>