Android下HttpURLConnection的默认超时是多少?

时间:2018-03-30 21:09:47

标签: java android httpurlconnection

android下的HttpURLConnection的默认读取和连接超时是多少?

它的接缝默认Timeout为0,但现在我很好奇,将连接超时设置为无限是否有任何缺点?如果出现问题,我们可以建立一个永远等待的连接吗?

1 个答案:

答案 0 :(得分:4)

A - 文档

由于HttpConnectionTimeout的Java文档默认设置为0 (表示无穷大),因此可以进行修改。

具体来说,它是用documentation;

中的accessor / getter方法编写的
  

public int getConnectTimeout()返回连接超时的设置。 0   return意味着该选项被禁用(即,超时)   无穷大)。

     

返回:一个int,表示连接超时值   毫秒自:   1.5参见:setConnectTimeout(int),connect()

如果我是你,我会在开始连接之前设置连接超时,并根据我自己的初始值设置逻辑/流量。下面,您可以看到如何获取默认值并设置/修改连接超时参数的示例。

B - 示例代码

package com.levo.so.huc;

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

public class HttpConnectionTimeoutDemo {

    public static void main(String[] args) throws IOException {
        String url = "http://www.google.com/";

        URL obj = new URL(url);
        HttpURLConnection con = (HttpURLConnection) obj.openConnection();

        System.out.println("Default Connection Timeout : " + con.getConnectTimeout());

        con.setConnectTimeout(1000);
        System.out.println("New Connection Timeout     : " + con.getConnectTimeout());

    }

}

C - 输出

Default Connection Timeout : 0
New Connection Timeout     : 1000