Utilisation HttpGet avec des caractères illégaux dans l'URL

Je suis en train d'utiliser DefaultHttpClient et HttpGet à faire une demande à un service web. Malheureusement, l'URL du service web contient des caractères illégaux tels que { (ex: domain.com/service/{username}). Il est évident que le web service de nommage n'est pas bien écrit, mais je ne peux pas le changer.

Quand je fais HttpGet(url), je reçois ce que j'ai un caractère interdit dans l'url (c'est { et }). Si je encoder l'URL avant cela, il n'y a pas d'erreur, mais la demande va vers une URL différente où il n'y a rien.

L'url, bien que a des caractères illégaux, fonctionne à partir du navigateur, mais le HttpGet mise en œuvre ne me permet pas de l'utiliser. Que dois-je faire ou d'utiliser à la place pour éviter ce problème?

Avez-vous essayé d'utiliser %7B et %7D, comme suit: domain.com/service/%7Busername%7D. Ou est-ce que vous entendez par le codage.

OriginalL'auteur Catalin Morosan | 2010-05-27