1

当我尝试用“#,&”字符缩短链接时,出现异常。有没有办法正确处理这些字符?

这是一个有效的示例代码:

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

如果我在字符串中添加例如 '&' 或 '%25' ,它将引发异常:

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

此 Java 类中的getShortUrl函数。

谢谢

4

1 回答 1

0

该库(您链接到的 Java 类)不会转义 URL……这太糟糕了。

摘抄:

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

请注意如何urlToShorten不以任何方式、形状或形式进行转义。容易受到注入式攻击,而且通常不起作用。

无论如何,你需要逃跑urlToShorten

于 2010-03-30T08:11:19.953 回答