Cómo implementar una conexión HTTP larga usando Java
Nuestro entendimiento:
Cuando la aplicación termina de leer el contenido del cuerpo de la respuesta o llama a close() para cerrar la secuencia devuelta por URLConnection.getInputStream(),
El identificador del protocolo HTTP en el JDK cerrará la conexión y la colocará en la caché de conexiones. La próxima vez que obtenga el ejemplo de URLConnection y obtenga la secuencia InputStream, se volverá a utilizar la conexión TCP abierta anteriormente.
Es decir:
string pública estática sendPost(String url, String param) { String result = ""; try { URL httpurl = new URL(urlConnection httpConn); = (HttpURLConnection) httpurl.openConnection(); httpConn.setDoOutput(true); httpConn.setDoInput(true); PrintWriter out = nuevo PrintWriter(httpConn.getOutputStream()); out .close(); BufferedReader in = new BufferedReader(new InputStreamReader(httpConn.getInputStream())); línea de cadena while ((line = in.readLine()) != null) { resultado += línea } in. close (); } catch (Exception e) { System.out.println("¡Sin resultado!" + e } return result }
Llamamos al método anterior en un intervalo corto (La conexión); La dirección es diferente, pero sigue siendo el mismo servidor y el mismo proyecto), utilizando la misma conexión TCP. ¿Entendemos esto bien? Si está mal, explíquelo. Gracias.