aboutsummaryrefslogtreecommitdiff
path: root/files/fr/web/http/methods/patch/index.md
blob: 8474dc8b8056cf300923856ddba3d43236d11de9 (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
---
title: PATCH
slug: Web/HTTP/Methods/PATCH
translation_of: Web/HTTP/Methods/PATCH
original_slug: Web/HTTP/Méthode/PATCH
---
La **méthode `PATCH` d'une requête HTTP** applique des modifications partielles à une ressource.

La méthode HTTP {{HTTPMethod("PUT")}} est déjà définie pour écraser une ressource avec un nouveau corps complet de message, et pour la méthode HTTP {{HTTPMethod("POST")}}, il n'existe aucun moyen standard pour découvrir le support de format de patch. Tout comme `POST`, la méthode HTTP `PATCH` n'est pas listée comme étant idempotent, contrairement à `PUT`. Cela signifie que les requêtes patch identiques et successives auront des effets différents sur l'objet manipulé.

Pour découvrir si un serveur supporte la méthode PATCH, un serveur peut annoncer son support en l'ajoutant à la liste des méthodes autorisées dans les headers de la réponse {{HTTPHeader ("Allow")}} ou encore {{HTTPHeader ("Access-Control-Allow-Methods")}} (pour CORS).

Une autre indication (implicite) que la méthode PATCH est autorisée est la présence du header {{HTTPHeader("Accept-Patch")}}.

<table class="properties">
  <tbody>
    <tr>
      <th scope="row">La requête possède un corps de message (body)</th>
      <td>Oui</td>
    </tr>
    <tr>
      <th scope="row">
        Une requête traitée avec succès retourne une réponse avec un corps de
        message (body)
      </th>
      <td>Non</td>
    </tr>
    <tr>
      <th scope="row">{{Glossary("Safe")}}</th>
      <td>Non</td>
    </tr>
    <tr>
      <th scope="row">{{Glossary("Idempotent")}}</th>
      <td>Non</td>
    </tr>
    <tr>
      <th scope="row">{{Glossary("Cacheable")}}</th>
      <td>Non</td>
    </tr>
    <tr>
      <th scope="row">
        Utilisation au sein des
        <a href="/fr/docs/Web/Guide/HTML/Formulaires">formulaires HTML</a>
      </th>
      <td>Non</td>
    </tr>
  </tbody>
</table>

## Syntaxe

    PATCH /file.txt HTTP/1.1

## Exemple

### Requête

    PATCH /file.txt HTTP/1.1
    Host: www.example.com
    Content-Type: application/example
    If-Match: "e0023aa4e"
    Content-Length: 100

    [description des changements]

### Réponse

Une requête traitée avec succès retourne une réponse accompagnée d'un code de réponse {{HTTPStatus("204")}}. Dans ce cas-ci, la réponse ne contient un corps de message.

    HTTP/1.1 204 No Content
    Content-Location: /file.txt
    ETag: "e0023aa4f"

## Spécifications

| Spécification                    | Titre                                           |
| -------------------------------- | ----------------------------------------------- |
| {{RFC("5789", "PATCH")}} | Méthode PATCH pour HTTP (PATCH Method for HTTP) |

## Voir aussi

- {{HTTPStatus("204")}}
- {{HTTPHeader("Allow")}}, {{HTTPHeader("Access-Control-Allow-Methods")}}
- {{HTTPHeader("Accept-Patch")}} – spécifie les formats de document de patch acceptés par le serveur.