Question

Lorsque je tente de réduire un lien avec « #, et » le caractère que je reçois une exception. Y at-il un moyen de gérer ces caractères correctement?

Ceci est un exemple de code qui fonctionne:

String shortUrl = bitly.getShortUrl("http://z"); //Works

Si j'ajoute par exemple « & » ou « % 25 » à la chaîne, il lancera une exception:

String shortUrl = bitly.getShortUrl("http://z%26"); // Exception 
String shortUrl = bitly.getShortUrl("http://z&"); // Exception

La fonction de getShortUrl cette classe Java .

Merci

Était-ce utile?

La solution

Cette bibliothèque (la classe Java vous un lien vers) n'échappe pas à l'URL ... qui est assez horrible.

Extrait:

private String getBitlyHttpResponseText(String urlToShorten) throws IOException {
  String uri = getBitlyUrl() + urlToShorten + bitlyAuth;
  HttpGet httpGet = new HttpGet(uri);
  ...

Remarquez comment urlToShorten est pas échappé de quelque manière que ce soit sous forme. Enclin à des attaques de type injection, et juste généralement ne fonctionne pas.

Quoi qu'il en soit, vous aurez besoin d'échapper à urlToShorten.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top