首页主机资讯Java中如何处理URL重定向

Java中如何处理URL重定向

时间2024-09-14 18:42:03发布访客分类主机资讯浏览552
导读:在Java中,处理URL重定向可以使用java.net.HttpURLConnection类 import java.io.IOException; import java.net.HttpURLConnection; import jav...

在Java中,处理URL重定向可以使用java.net.HttpURLConnection

import java.io.IOException;
    
import java.net.HttpURLConnection;
    
import java.net.URL;


public class URLRedirectExample {

    public static void main(String[] args) {

        try {
    
            String url = "https://example.com";
     // 替换为需要重定向的URL
            HttpURLConnection connection = (HttpURLConnection) new URL(url).openConnection();
    
            connection.setInstanceFollowRedirects(false);
     // 禁用自动重定向
            int responseCode = connection.getResponseCode();


            if (responseCode == HttpURLConnection.HTTP_MOVED_PERM || responseCode == HttpURLConnection.HTTP_MOVED_TEMP) {
    
                String redirectUrl = connection.getHeaderField("Location");
     // 获取重定向的URL
                System.out.println("Redirected to: " + redirectUrl);
    

                // 如果需要继续访问重定向的URL,可以创建一个新的HttpURLConnection实例
                HttpURLConnection redirectConnection = (HttpURLConnection) new URL(redirectUrl).openConnection();

                // 处理重定向后的URL
            }
 else {
    
                System.out.println("No redirection found.");

            }

        }
 catch (IOException e) {
    
            e.printStackTrace();

        }

    }

}
    

这个示例首先创建一个HttpURLConnection实例,然后禁用自动重定向。接下来,它检查响应代码是否表示重定向(HTTP_MOVED_PERM或HTTP_MOVED_TEMP)。如果发现重定向,它将从"Location"头字段中获取重定向的URL并打印出来。如果需要继续访问重定向的URL,可以创建一个新的HttpURLConnection实例。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Java中如何处理URL重定向
本文地址: https://pptw.com/jishu/699317.html
Java中URL的异常处理机制 如何使用Java发送HTTP请求并获取URL响应

游客 回复需填写必要信息