Expression régulière
La syntaxe des expressions régulières au sein d'Ogo est différente de celles standards, bien qu'elle soit fortement liée aux expressions régulières RE2, avec quelques spécificités.
Les expressions régulières servent pour les fonctionnalités d'URL Exception et de Contrôle d'accès.
Elles vous permettent d'établir des motifs qui correspondront aux requêtes que vous souhaitez traiter avec la fonctionnalité donnée.
Comment les utiliser ?
Par essence, les expressions régulières actuellement utilisées par Ogo traitent des URL, et doivent donc commencer par /.
Exemples simples :
/api
Couvre les URL du type : /apiv2, /api/toto/api/
Couvre les URL du type : /api/toto, mais pas du type : /apiv2
Exemples RegExp :
Structure : {[nom_du_groupe]:[regexp]}
/api/articles/{id:[0-9]+}
{id:[0-9]+} va matcher un chiffre qui se répète.Couvre les URL du type : /api/articles/123/anything
Ne couvre pas : /api/articles/anything
/api/authors/john-{name:[a-zA-Z-]+}/articles{end:$}
{name:[a-zA-Z-]+} va matcher un caractère alphabétique miniscule/majuscule/tiret qui se répète. {end:$} va matcher une fin de chaîne de caractères.Couvre les URL du type : /api/authors/john-doe/articles
Ne couvre pas : /api/authors/robert/articles, /api/authors/john-doe/articles/anything
Modifieurs
Insensible à la casse : /{path:(?i)api} va matcher /api, /APi, /aPI...
Annuler des modifieurs : /{path:(?i:foo)(?-i:BAR)} va matcher fooBAR et non foobar, ni fooBaR...