Error con getOutputStream de la clase HttpURLConnection
Publicado por raquel (1 intervención) el 24/06/2015 12:07:56
Hola.
Soy nueva en Android y llevo varias días con un problema que no se como resolver.
Estoy intentando hacer un post a una página, y tengo el código en java que me funciona, pero al ejecutarlo en android no se porque no ejecuta la instruccion que llama a la función getOutputStream() de la clase HttpURLConnect.
Os pego el código y desde ya muchas gracias.
Soy nueva en Android y llevo varias días con un problema que no se como resolver.
Estoy intentando hacer un post a una página, y tengo el código en java que me funciona, pero al ejecutarlo en android no se porque no ejecuta la instruccion que llama a la función getOutputStream() de la clase HttpURLConnect.
Os pego el código y desde ya muchas gracias.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
private class PostHilo extends AsyncTask<URL, Void, String> {
private HttpURLConnection conexion;
private String respuesta;
protected String doInBackground(URL... url){
Proxy proxy = new Proxy(Proxy.Type.HTTP, new InetSocketAddress("127.0.0.1", 8080)); //lo pasamos por burp
try {
this.conexion = (HttpURLConnection) url[0].openConnection(proxy);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
conexion.setDoOutput(true); //activa el metodo post
conexion.setFixedLengthStreamingMode(data.getBytes().length);
conexion.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
OutputStream out = null;
try {
OutputStream con = conexion.getOutputStream(); //el error esta aqui, no ejecuta esta instruccion
out = new BufferedOutputStream(con);
out.write(data.getBytes());
out.flush();
out.close();
}catch (IOException e) {
e.printStackTrace();
} finally {
if(conexion!=null)
conexion.disconnect();
}
BufferedReader rd = null;
try {
rd = new BufferedReader(new InputStreamReader(conexion.getInputStream()));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
String linea;
//procesamos la salida
try {
while((linea =rd.readLine()) != null) {
this.respuesta+= linea;
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(this.respuesta);
return respuesta;
}
Valora esta pregunta


0