URL correctement encoder le caractère de l'espace
- Je utiliser HttpUtility.UrlEncode pour coder une valeur qui est utilisée dans une route.
J'ai déjà résolu un problème avec l'encodage des barres obliques. Le nouveau problème que j'ai maintenant c'est avec des espaces. Un espace est codé en + .
Cela fonctionne sur le VS Serveur web intégré, mais j'ai un problème avec elle dans IIS7 sur Windows Server 2008.
Si j'ai l'URL http://localhost/Home/About/asdas+sdasd
Je reçois le message d'erreur 404.11 - la Demande contient la séquence d'échappement double.
Je sais que je peux juste remplacer l'espace par "%20", mais je ne veux pas de soins sur propper codant pour moi-même. Est-il prêt à utiliser UrlEncoder pour MVC?
source d'informationauteur Mathias F
Vous devez vous connecter pour publier un commentaire.
'"encodée à 20% d'utilisation
HttpUtility.UrlPathEncode
.Toute l'Encodage de l'URL est le plus souvent conçu pour fonctionner sur la partie chemin de l'url, la raison, parce que les différents régimes ont des caractères différents dans le coffre de la liste. Recherchez vos bibliothèques urlencoder et viens de l'utiliser dans le chemin d'accès et au-dessus de la partie de l'url.
UrlPathEncode juste encode le chemin de l'Url, plutôt que de l'encodage de l'ensemble de l'Url.