使用HttpURLConnection来获取状态码

本文探讨了Java中使用HttpURLConnection设置连接超时和读取超时的方法,并通过示例代码展示了如何设置这两个参数。但作者遇到了即使设置了超时时间也未按预期工作的现象。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里设置了setConnectTimeout和setReadTimeout。但好像没起作用,有了解的可以共享一下。

public static void main(String[] args) {
        // start
        try {
            HttpURLConnection httpUrlConn = (HttpURLConnection) new URL(
                    "http://www.baidu.com").openConnection();
            // 设置连接主机超时(单位:毫秒)
            httpUrlConn.setConnectTimeout(200);
            // 设置从主机读取数据超时(单位:毫秒)
            httpUrlConn.setReadTimeout(200);
            System.out.println(new Date());
            int statusCode = httpUrlConn.getResponseCode();
            System.out.println(new Date());
            System.out.println(statusCode);
            if (statusCode != 200) {
                System.out.println("不存在");
            } else {
                System.out.println("可以访问");
            }
            // 打开流关闭
            InputStream is2 = httpUrlConn.getInputStream();
            is2.close();
        } catch (Exception e) {
            System.out.println("error:" + new Date());
            // TODO: handle exception
            System.err.println(e.getMessage());
        }
        // end
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值