metodo doget java http get httpurlconnection

doget - post request java



¿Cómo hago un HTTP GET en Java? (4)

La forma más simple que no requiere bibliotecas de terceros es crear un objeto URL y luego llamar a openConnection o openStream en él. Tenga en cuenta que esta es una API bastante básica, por lo que no tendrá mucho control sobre los encabezados.

Esta pregunta ya tiene una respuesta aquí:

¿Cómo hago un HTTP GET en Java?


Si desea transmitir cualquier página web, puede utilizar el siguiente método.

import java.io.*; import java.net.*; public class c { public static String getHTML(String urlToRead) throws Exception { StringBuilder result = new StringBuilder(); URL url = new URL(urlToRead); HttpURLConnection conn = (HttpURLConnection) url.openConnection(); conn.setRequestMethod("GET"); BufferedReader rd = new BufferedReader(new InputStreamReader(conn.getInputStream())); String line; while ((line = rd.readLine()) != null) { result.append(line); } rd.close(); return result.toString(); } public static void main(String[] args) throws Exception { System.out.println(getHTML(args[0])); } }


Si no desea utilizar bibliotecas externas, puede usar las clases URL y URLConnection de la API Java estándar.

Un ejemplo se ve así:

String urlString = "http://wherever.com/someAction?param1=value1&param2=value2...."; URL url = new URL(urlString); URLConnection conn = url.openConnection(); InputStream is = conn.getInputStream(); // Do what you want with that stream


Técnicamente puedes hacerlo con un socket TCP directo. No lo recomendaría sin embargo. Recomiendo encarecidamente que utilice Apache HttpClient en su lugar. En su forma más simple :

GetMethod get = new GetMethod("http://httpcomponents.apache.org"); // execute method and handle any error responses. ... InputStream in = get.getResponseBodyAsStream(); // Process the data from the input stream. get.releaseConnection();

y aquí hay un ejemplo más completo .