aboutsummaryrefslogtreecommitdiff
path: root/files/fr/glossary/preflight_request/index.html
blob: 0fa676bfb97f93b4ef743f738213432d74461dc6 (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
---
title: Requête de pré-vérification
slug: Glossary/Preflight_request
tags:
  - CORS
  - HTTP
  - pré-vérification
translation_of: Glossary/Preflight_request
original_slug: Glossaire/requete_pre-verification
---
<p>Une requête de pré-vérification cross-origin <a href="https://developer.mozilla.org/fr/docs/Glossaire/CORS">CORS</a> est une requête de vérification faite pour contrôler si le protocole {{Glossary("CORS")}} est autorisé.</p>

<p>C'est une requête utilisant la méthode {{HTTPMethod("OPTIONS")}} qui utilise trois en-têtes HTTP : La méthode {{HTTPHeader("Access-Control-Request-Method")}}, les en-têtes {{HTTPHeader("Access-Control-Request-Headers")}} et {{HTTPHeader("Origin")}}.</p>

<p>Une requête de pré-vérification est automatiquement envoyée par le navigateur quand cela est nécessaire. Dans les cas normaux, les intégrateurs n'ont pas besoin de construire eux-mêmes cette requête.</p>

<p>Par exemple, un client peut demander au serveur si celui-ci autorise l'usage de la méthode {{HTTPMethod("DELETE")}} dans la requête HTTP, avant d'envoyer la "vraie" requête avec la méthode {{HTTPMethod("DELETE")}} :</p>

<pre>OPTIONS /resource/foo
Access-Control-Request-Method: DELETE
Access-Control-Request-Headers: origin, x-requested-with
Origin: https://foo.bar.org</pre>

<p>Si le serveur l'accepte, alors celui-ci va répondre à la requête de pré-vérification en envoyant une réponse HTTP contenant l'entête {{HTTPHeader("Access-Control-Allow-Methods")}} dont la valeur contiendra dans sa liste la méthode <code>DELETE</code>:</p>

<pre>HTTP/1.1 200 OK
Content-Length: 0
Connection: keep-alive
Access-Control-Allow-Origin: https://foo.bar.org
Access-Control-Allow-Methods: POST, GET, OPTIONS, DELETE
Access-Control-Max-Age: 86400</pre>

<p>À remarquer dans cet exemple que le serveur autorise les méthodes : POST ; GET ; OPTIONS et DELETE.</p>

<h2 id="Voir_également">Voir également</h2>

<ul>
 <li><a href="/en-US/docs/Glossary/CORS">CORS</a></li>
 <li>{{HTTPMethod("OPTIONS")}}</li>
</ul>