2010-09-06 35 views

Respuesta

22

Suponiendo que se desea utilizar un HttpURLConnection, para realizar un HTTP PUT se utiliza la siguiente:

URL url = new URL("http://www.example.com/resource"); 
HttpURLConnection httpCon = (HttpURLConnection) url.openConnection(); 
httpCon.setDoOutput(true); 
httpCon.setRequestMethod("PUT"); 
OutputStreamWriter out = new OutputStreamWriter(
    httpCon.getOutputStream()); 
out.write("Data you want to put"); 
out.close(); 

utilizar la clase HTTPPut luego tratar:

URL url = new URL("http://www.example.com/resource"); 
HttpClient client = new DefaultHttpClient(); 
HttpPut put= new HttpPut(url); 

List<NameValuePair> pairs = new ArrayList<NameValuePair>(); 
pairs.add(new BasicNameValuePair("key1", "value1")); 
pairs.add(new BasicNameValuePair("key2", "value2")); 
put.setEntity(new UrlEncodedFormEntity(pairs)); 

HttpResponse response = client.execute(put); 

Estoy bastante seguro de que esto debería funcionar aunque no lo he probado :)

+0

thx mucho, ¿podría darme un ejemplo de clase HttpPut ^^ "? – peterlawn

+0

Creo que es correcto, así es como se hace un POST, nunca he probado ried un PUT antes de – BeRecursive

+0

es el setEntity utilizado para pasar datos? Como en out.write (...) en el primer ejemplo? Si es así, ¿cómo le paso cadena simple? – Codevalley