Maison > développement back-end > C++ > Comment gérer les caractères points (.) dans les paramètres de requête MVC Web API 2 ?

Comment gérer les caractères points (.) dans les paramètres de requête MVC Web API 2 ?

Susan Sarandon
Libérer: 2025-01-05 07:27:43
original
587 Les gens l'ont consulté

How to Handle Dot Characters (.) in MVC Web API 2 Request Parameters?

Adressage du caractère point dans les paramètres de requête de l'API Web MVC 2

Dans l'API Web MVC 2, il est pratique de travailler avec des paramètres de requête qui respecter un format cohérent. Cependant, il est parfois nécessaire de traiter des requêtes contenant des caractères spéciaux, comme un point (.). Cet article explore la question de l'inclusion du caractère point dans les paramètres de requête et propose une solution pratique.

Problème sous-jacent

L'utilisateur avait l'intention d'autoriser les requêtes au format :

http://somedomain.com/api/people/staff.33311
Copier après la connexion

Cependant, lorsqu'ils ont essayé cela, ils ont rencontré une erreur 404. Cela s'est produit car le routage par défaut de l'API Web est conçu pour reconnaître les segments du chemin d'URL en tant que noms de contrôleur et d'action, suivis de paramètres facultatifs. Le caractère point dans l'URL de la requête provoque une ambiguïté car il est analysé soit comme une partie du nom de l'action, soit comme un paramètre de requête.

Solution proposée

Pour résoudre ce problème problème, l'utilisateur peut s'assurer que le paramètre de requête en question ne fait pas partie d'un segment de chemin d'URL et ne peut pas être confondu avec un contrôleur ou un nom d'action. Une façon d'y parvenir consiste à ajouter une barre oblique finale à l'URL, comme ceci :

http://somedomain.com/api/people/staff.33311/
Copier après la connexion

La barre oblique finale garantit que le paramètre est traité comme une chaîne de requête au lieu d'une partie du chemin de l'URL. Cela permet à l'API Web d'analyser correctement la demande et de la mapper à l'action prévue.

Considérations relatives à la mise en œuvre

En fonction de la configuration du serveur, vous devrez peut-être également ajuster le Web. .config pour autoriser les points dans le chemin de l'URL. Ceci peut être réalisé en définissant l'attribut "allowDotsInPath" de l'élément httpRuntime sur true, comme indiqué ci-dessous :

<system.webServer>
  <httpRuntime allowDotsInPath="true" />
</system.webServer>
Copier après la connexion

En implémentant cette solution, l'utilisateur peut gérer les requêtes avec un point dans le paramètre tout en conservant un format de demande cohérent et sans ambiguïté.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal