Maison  >  Article  >  Java  >  Comment empêcher la troncature de @PathVariable dans Spring MVC ?

Comment empêcher la troncature de @PathVariable dans Spring MVC ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-29 20:42:30306parcourir

How to Prevent @PathVariable Truncation in Spring MVC?

Résolution de la troncature de @PathVariable dans Spring MVC

Problème :
Lorsqu'un contrôleur Spring MVC définit un @PathVariable avec une variable de chemin personnalisée argument, les segments de chemin contenant des caractères spéciaux sont tronqués.

Exemple :

@RequestMapping(method = RequestMethod.GET, value = Routes.BLAH_GET + "/{blahName}")

Passer un URI avec une variable de chemin blah2010.08.19-02:25:47 entraîne la troncature du paramètre blahName en blah2010.08.

Résolution :
Pour éviter la troncature, utilisez une expression régulière dans l'argument @RequestMapping :

@RequestMapping(method = RequestMethod.GET, value = Routes.BLAH_GET + "/{blahName:.+}")

Le . = regex autorise n'importe quel nombre de caractères (y compris les caractères spéciaux) après le point initial, capturant efficacement l'intégralité du segment de chemin en tant que valeur de variable de chemin. Le request.getRequestURI() renverra alors l'URI complet, y compris le blahName complet.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn