2015-07-26 2 views
0

J'ai donc ce moment de faire une requête HTTP en Java:Comment définir le délai d'attente sur InputStreamReader?

HttpURLConnection connection = (HttpURLConnection) apiURL.openConnection(); 

connection.setDoInput(true); 
connection.setDoOutput(true); 
connection.setRequestMethod("POST"); 
connection.setRequestProperty("Accept", "application/json"); 
connection.setRequestProperty("Content-Type", "application/json; charset=UTF-8"); 
OutputStreamWriter writer = new OutputStreamWriter(connection.getOutputStream(), "UTF-8"); 
writer.write(payload); 
writer.close(); 

JSONObject json = (JSONObject) new JSONParser().parse(new InputStreamReader(connection.getInputStream())); 
connection.disconnect(); 

J'ai vu beaucoup de mention de prises, mais je ne sais pas comment il applique ici. Comment définir un délai d'attente sur cette requête HTTP pour dire 1 seconde?

Répondre

2

Vous pouvez régler le délai sur la connexion HTTP comme: -

connection.setConnectTimeout(5000); // 5 seconds connectTimeout 
connection.setReadTimeout(5000); // 5 seconds socketTimeout