Ajout de paramètres de chemin et de caractères génériques aux chemins de routage
Découvrez comment ajouter des paramètres de chemin et des caractères génériques aux chemins de routage des spécifications de déploiement d'API avec la passerelle d'API.
Il se peut que vous vouliez acheminer différentes demandes d'API vers le même élément dorsal, même si les URL des demandes diffèrent dans une certaine mesure de la définition du chemin de routage de la spécification de déploiement d'API.
Lors de la définition d'un chemin de routage dans une spécification de déploiement d'API, vous pouvez inclure un paramètre de chemin pour remplacer exactement un segment individuel du chemin. Si nécessaire, vous pouvez inclure plusieurs paramètres de chemin dans le chemin de routage. Vous pouvez également ajouter le caractère générique de l'astérisque (*) à un paramètre de chemin dans le chemin de routage pour fournir une plus grande souplesse lors de l'identification des demandes à envoyer au même élément dorsal.
Les exemples de cette rubrique supposent que vous ajoutiez des chemins de routage à une spécification de déploiement d'API dans un fichier JSON. Notez que ces exemples s'appliquent également lorsque vous définissez une spécification de déploiement d'API à l'aide des boîtes de dialogue de la console.
Exemple : Ajout de paramètres de chemin pour mettre en correspondance des URL similaires
Vous avez peut-être besoin d'acheminer les demandes avec des URL similaires vers le même élément dorsal. Par exemple :
- https://<gateway-hostname>/marketing/hello/us/index.html
- https://<gateway-hostname>/marketing/hello/apac/index.html
- https://<gateway-hostname>/marketing/hello/emea/index.html
Pour permettre la résolution des appels à ces URL similaires au même élément dorsal, ajoutez un nom de paramètre de chemin entre accolades en tant que segment du chemin de routage qui changera entre les appels d'API. Par exemple, {region}
comme illustré ci-dessous :
{
"routes": [
{
"path": "/hello/{region}/index.html",
"methods": ["GET"],
"backend": {
"type": "ORACLE_FUNCTIONS_BACKEND",
"functionId": "ocid1.fnfunc.oc1.phx.aaaaaaaaab______xmq"
}
}
]
}
Notez que les noms de paramètre de chemin :
- Peuvent inclure des caractères alphanumériques en majuscules et en minuscules.
- Peuvent inclure le caractère spécial du trait de soulignement
_
. - Ne peuvent pas inclure d'autres caractères spéciaux. En particulier, notez que vous ne pouvez pas inclure des espaces, des barres obliques et des accolades dans les noms de paramètre de chemin.
Exemple : Ajout de paramètres de chemin avec un caractère générique pour mettre en correspondance des URL différentes
Vous avez peut-être besoin d'acheminer des demandes vers le même élément dorsal, même si les URL des demandes sont très différentes. Par exemple :
- https://<gateway-hostname>/marketing/hello/us/index.html
- https://<gateway-hostname>/marketing/hello/apac/introduction/
- https://<gateway-hostname>/marketing/hello/emea/welcome.html
- https://<gateway-hostname>/marketing/hello/introduction
- https://<gateway-hostname>/marketing/hello/top.html
- https://<gateway-hostname>/marketing/hello/
Pour permettre la résolution des appels à ces URL très différentes au même élément dorsal :
- Ajoutez le nom d'un paramètre de chemin entre accolades en tant que premier segment du chemin de routage, qui diffèrera entre les divers appels d'API.
- Ajoutez le caractère générique de l'astérisque (*) à la fin du nom du paramètre de chemin.
Par exemple, {generic_welcome*}
comme illustré ci-dessous :
{
"routes": [
{
"path": "/hello/{generic_welcome*}",
"methods": ["GET"],
"backend": {
"type": "ORACLE_FUNCTIONS_BACKEND",
"functionId": "ocid1.fnfunc.oc1.phx.aaaaaaaaab______xmq"
}
}
]
}
Notez qu'un nom de paramètre de chemin avec le caractère générique de l'astérisque met en correspondance les éléments suivants :
- Aucun segment de chemin
- Un segment de chemin unique
- Plusieurs segments de chemin