You signed in with another tab or window.Reload to refresh your session.You signed out in another tab or window.Reload to refresh your session.You switched accounts on another tab or window.Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: fr/guide/routing.md
+22-24Lines changed: 22 additions & 24 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,7 +1,7 @@
1
1
---
2
2
layout:page
3
3
title:Routage Express
4
-
description:Learn how to define and useroutesinExpress.js applications, including route methods, route paths, parameters, and usingRouterfor modular routing.
4
+
description:Apprenez à définir et à utiliser desroutesdans les applicationsExpress.js, y compris les méthodes de routes, les chemins de routes, les paramètres et l’utilisation deRouterpour un routage modulaire.
Ces méthodes de routage spécifient une fonction de rappel (parfois "appelée fonction de gestion") qui est appelée lorsque l'application reçoit une requête correspondant à la route (point de terminaison) et à la méthode HTTP spécifiées. Autrement dit, l'application "écoute" les requêtes qui correspondent à la ou aux routes et à la ou aux méthodes spécifiées, et lorsqu'une correspondance est détectée, elle appelle la fonction de rappel définie.
20
20
21
-
In fact, the routing methods can have more than one callback function as arguments.
22
-
With multiple callback functions, it is important to provide`next` as an argument to the callback function and then call`next()` within the body of the function to hand off control
23
-
to the next callback.
21
+
En réalité, les méthodes de routage peuvent accepter plusieurs fonctions de rappel comme arguments.
22
+
Lorsqu'il y a plusieurs fonctions de rappel, il est important de fournier`next` comme argument à la fonction de rappel, puis d'appeler`next()` dans le corps de la fonction afin de passer le contrôle à la fonction de rappel suivante.
24
23
25
24
Le code suivant est un exemple de routage très basique.
26
25
@@ -52,8 +51,8 @@ app.post('/', (req, res) => {
52
51
})
53
52
```
54
53
55
-
Expresssupports methods that correspond to all HTTP request methods:`get`,`post`,and so on.
56
-
For a full list, see[app.METHOD](/{{ page.lang }}/5x/api.html#app.METHOD).
54
+
Expressprend en charge des méthodes correspondant à toutes les méthodes de requête HTTP:`get`,`post`,etc. Pour la liste complète, voir[app.METHOD](/{{ page.lang }}/5x/api.html#app.METHOD).
55
+
Pour la liste complète, voir[app.METHOD](/{{ page.lang }}/5x/api.html#app.METHOD).
57
56
58
57
Il existe une méthode de routage spéciale,`app.all()`, qui n'est pas dérivée d'une méthode HTTP. Cette méthode est utilisée pour charger des fonctions middleware à un chemin d'accès pour toutes les méthodes de demande.
Les chemins de routage, combinés à une méthode de demande, définissent les noeuds finaux sur lesquels peuvent être effectuées les demandes. Les chemins de routage peuvent être des chaînes, des masques de chaîne ou des expressions régulières.
{% capture caution-character %}Dans Express 5,les caractères`?`,`+`,`*`,`[]`,et`()`sont traités différemment par rapport à laversion 4. Veuillez consulter le[migration guide](/{{ page.lang }}/guide/migrating-5.html#path-syntax)pour plus d'informations.{% endcapture %}
72
71
73
72
{% include admonitions/caution.html content=caution-character %}
74
73
75
-
{% capture note-dollar-character %}In express 4,regularexpressioncharacters such as`$`need to be escaped with a`\`.
74
+
{% capture note-dollar-character %}Dans Express 4,les caractères d'expressionrégulière tels que`$`doivent être échappés avec un`\`.
76
75
{% endcapture %}
77
76
78
77
{% include admonitions/caution.html content=note-dollar-character %}
79
78
80
79
{% capture note-path-to-regexp %}
81
80
82
-
Expressuses[path-to-regexp](https://www.npmjs.com/package/path-to-regexp)for matching the route paths; see thepath-to-regexpdocumentation for all the possibilities in defining route paths.[Express Route Tester](http://forbeslindesay.github.io/express-route-tester/) est un outil pratique permettant de tester des routes Express de base, bien qu'il ne prenne pas en charge le filtrage par motif.
81
+
Expressutilise[path-to-regexp](https://www.npmjs.com/package/path-to-regexp)pour faire correspondre les chemins de routes ; consultez la documentation depath-to-regexppour connaître toutes les possibilités de définition des chemins de routes.[Express Route Tester](http://forbeslindesay.github.io/express-route-tester/) est un outil pratique permettant de tester des routes Express de base, bien qu'il ne prenne pas en charge le filtrage par motif.
83
82
84
83
{% endcapture %}
85
84
86
85
{% include admonitions/note.html content=note-path-to-regexp %}
87
86
88
87
{% capture query-string-note %}
89
88
90
-
Querystrings are not part of the route path.
89
+
Les chaînes de requête (querystrings) ne font pas partie du chemin de la route.
###Il s'agit d'exemples de chemins de routage basés sur des masques de chaîne.
123
122
124
-
{% capture caution-string-patterns %}Thestring patterns in Express 5 no longer work. Please refer to the[migration guide](/{{ page.lang }}/guide/migrating-5.html#path-syntax)for more information.{% endcapture %}
123
+
{% capture caution-string-patterns %}Les motifs de chaînes (string patterns) ne fonctionnent plus dans Express 5. Veuillez consulter[migration guide](/{{ page.lang }}/guide/migrating-5.html#path-syntax)pour plus d'informations.{% endcapture %}
125
124
126
125
{% include admonitions/caution.html content=caution-string-patterns %}
Les chaînes de requête ne font pas partie du chemin de routage.
180
179
</h2>
181
180
182
-
Route parameters are named URLsegmentsthat are used to capture the values specified at theirpositionin theURL.The captured values are populated in the`req.params` object, with the name of therouteparameter specified in the path as their respective keys.
181
+
Les paramètres de route sont dessegmentsnommés de l'URL utilisés pour capturer les valeurs spécifiées à leurpositiondans l'URL.Les valeurs capturées sont placées dans l'objet`req.params`, avec le nom du paramètre deroutespécifié dans le chemin comme clé correspondante.
In express 5, Regexpcharacters are not supported in route paths, for more information please refer to the[migrationguide](/{{ page.lang }}/guide/migrating-5.html#path-syntax).{% endcapture %}
215
+
Dans Express 5,les caractèresRegexpne sont pas pris en chage dans les chemins de route. Pour plus d'informations, veuillez consulter le[guide de migration](/{{ page.lang }}/guide/migrating-5.html#path-syntax).{% endcapture %}
218
216
219
217
{% include admonitions/caution.html content=warning-regexp %}
220
218
221
-
To have more control over the exact string that can be matched by aroute parameter, you can append a regularexpressionin parentheses (`()`):
219
+
Pour mieux contrôler la chaîne exacte pouvant être capturée par un paramètre deroute, vous pouvez ajouter uneexpressionrégulière entre parenthèses (`()`):
222
220
223
221
```
224
222
Route path: /user/:userId(\d+)
@@ -236,7 +234,7 @@ Comme l'expression régulière fait généralement partie d'une chaîne littéra
236
234
237
235
{% capture warning-version %}
238
236
239
-
In Express 4.x, <ahref="https://github.com/expressjs/express/issues/2495">the`*`character in regular expressions is not interpreted in the usual way</a>.As a workaround, use`{0,}`instead of`*`.This will likely be fixed in Express 5.
237
+
Dans Express 4.x, <ahref="https://github.com/expressjs/express/issues/2495">le caractère`*`dans une expression régulière n'est pas interprété de manière habituelle</a>.Comme solution de contournement, utilisez`{0,}`au lieu de`*`.Cela sera probablement corrigé dans Express 5.
-`GET /user/5` →handled by firstroute →sends "User 5"
265
-
-`GET /user/0` →firstroutecalls`next('route')`,skipping to the next matching`/user/:id` route
262
+
-`GET /user/5` →géré par la premièreroute →envoie "User 5"
263
+
-`GET /user/0` →la premièrerouteappelle`next('route')`,en passant à la prochaine route correspondant à`/user/:id`
266
264
267
265
Les gestionnaires de route se trouvent sous la forme d'une fonction, d'un tableau de fonctions ou d'une combinaison des deux, tel qu'indiqué dans les exemples suivants.
268
266
@@ -339,7 +337,7 @@ Les méthodes de l'objet de réponse (`res`) décrites dans le tableau suivant p
339
337
|[res.redirect()](/{{ page.lang }}/4x/api.html#res.redirect)| Redirige une demande.|
340
338
|[res.render()](/{{ page.lang }}/4x/api.html#res.render)| Génère un modèle de vue.|
341
339
|[res.send()](/{{ page.lang }}/4x/api.html#res.send)| Envoie une réponse de divers types.|
342
-
|[res.sendFile()](/{{ page.lang }}/4x/api.html#res.sendFile)|Send a file as an octet stream.|
340
+
|[res.sendFile()](/{{ page.lang }}/4x/api.html#res.sendFile)|Envoyer un fichier sous forme de flux octet.|
343
341
|[res.sendStatus()](/{{ page.lang }}/4x/api.html#res.sendStatus)| Définit le code de statut de réponse et envoie sa représentation sous forme de chaîne comme corps de réponse.|
344
342
345
343
<h2id="app-route">app.route()</h2>
@@ -405,7 +403,7 @@ app.use('/birds', birds)
405
403
406
404
L'application pourra dorénavant gérer des demandes dans`/birds` et`/birds/about`, et appeler la fonction middleware`timeLog` spécifique à la route.
407
405
408
-
But if the parentroute`/birds`has path parameters, it will not be accessible by default from the sub-routes.To make it accessible, you will need to pass the`mergeParams`option to the Router constructor[reference](/{{ page.lang }}/5x/api.html#app.use).
406
+
Mais si larouteparente`/birds`possède des paramètres de chemin, ils ne seront pas accessibles par défaut depuis les sous-routes.Pour qu'ils soient accessibles, vous devez passer l'option`mergeParams`au constructeur de Router[reference](/{{ page.lang }}/5x/api.html#app.use).