java - 使用 Java 通过 HTTP 请求获取位短 url 重定向到的 url

标签 java httprequest unirest

我有短网址

bit.ly/18SuUzJ

这会导致

stackoverflow.com/

你知道如何使用 Java 的 HTTP 请求获取该 url 吗? 我将 Unirest 添加到 Maven 依赖项并尝试了如下操作:

    HttpResponse<String> response = Unirest.get("bit.ly/18SuUzJ").asObject(String.class);
    System.out.println(response.getBody());

但我得到了该页面的整个结构,而不仅仅是 url 。 如何获取仅适用于其他短网址的网址?

最佳答案

试试这个:

final String link = "bit.ly/18SuUzJ";
final URL url = new URL(link);
final HttpURLConnection urlConnection = 
(HttpURLConnection) url.openConnection();
urlConnection.setInstanceFollowRedirects(false);

final String location = 
urlConnection.getHeaderField("location");
System.out.println(location);

location 将打印完整的 URL。

关于java - 使用 Java 通过 HTTP 请求获取位短 url 重定向到的 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52523095/

相关文章:

javascript - 响应头中的 Access-Control-Allow-Origin 是否区分大小写?

java - 如何将带有 "-i --upload-file"的 curl 调用转换为 java Unirest 或任何其他 http 请求?

java - 尝试从保存在 sketchware 中的 map 变量中的 json 对象获取子键值

java - 从 mvn 依赖项中排除某些依赖项 :resolve

javascript - 如何使用 axios 发出编码的 POST 请求?

json - 在 REST WCF 中读取 HttpRequest 主体

java - 找不到类 java.io.ByteArrayInputStream 的序列化器

java - 使用 asString 方法时 Unirest 给出 NoSuchMethodError

java - Android 下拉旋转设计

java - 使用 JSTL 设置 HTML 下拉选择选项