当我尝试缩短的链接“#&”字符我得到一个异常。是否有办法妥善处理这些字符?

这是一个示例代码,作品:

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

如果我添加例如“&”或“%25”的字符串,将抛出异常:

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

从该getShortUrl功能此Java类

由于

有帮助吗?

解决方案

这是库没有逃脱URL(链接到Java类)......这是相当可怕的。

摘录:

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

注意如何urlToShorten不以任何方式,形状或形式逃脱。容易注入式攻击,只是一般不起作用。

总之,你需要逃避urlToShorten

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top