2009-12-22 3 views
38

Sai come impostare Content-Type su HttpURLConnection?Come impostare il tipo di contenuto su HttpURLConnection?

seguito il codice è su Blackberry e voglio l'equivalente Android:

connection.setRequestProperty("content-type", "text/plain; charset=utf-8"); 
connection.setRequestProperty("Host", "192.168.1.36"); 
connection.setRequestProperty("Expect", "100-continue"); 

E 'giusto per Android?

Si prega di avvisare.

+0

stava cercando l'intestazione destra per specificare per una richiesta GET, quindi ho preso la mia domanda ha risposto, cercando in tua domanda. – Grubsnik

+0

Ciao, ho una domanda relativa al tuo argomento ... puoi dirmi qualche idea generale su come "connection.setRequestProperty (" Expect "," 100-continue ");" influisce sulla tua procedura? Hai bisogno di ... aspettare una risposta di 100, quindi fare qualche altra operazione, e poi aspettare una risposta di 200? – Josh

risposta

59

Se davvero si vuole utilizzare il HttpURLConnection è possibile utilizzare il metodo setRequestProperty come:

myHttpURLConnection.setRequestProperty("Content-Type", "text/plain; charset=utf-8"); 
myHttpURLConnection.setRequestProperty("Expect", "100-continue"); 

Tuttavia, se fossi in te considerare di usare il Apache HTTP libraries. Sono un po 'più di alto livello e più facili da usare. Con loro si dovrebbe fare con qualcosa di simile:

HttpGet get = new HttpGet("http://192.168.1.36/"); 
get.setHeader("Content-Type", "text/plain; charset=utf-8"); 
get.setHeader("Expect", "100-continue"); 

HttpResponse resp = null; 
try { 
    HttpClient httpClient = new DefaultHttpClient(); 
    resp = httpClient.execute(get); 
} catch (ClientProtocolException e) { 
    Log.e(getClass().getSimpleName(), "HTTP protocol error", e); 
} catch (IOException e) { 
    Log.e(getClass().getSimpleName(), "Communication error", e); 
} 
if (resp != null) { 
    // got a response, do something with it 
} else { 
    // there was a problem 
} 
+10

Proprio come raccomandato dovresti usare UrlConnection come suggerito da Jesse Wilson - http://android-developers.blogspot.com/2011/09/androids-http-clients.html –

13
connection.setRequestProperty("Content-Type", "VALUE"); 
+0

Grazie per la risposta rapida. Ho una domanda? Sto cercando di creare la connessione http GET: connection.setRequestProperty ("content-type", "text/plain; charset = utf-8"); connection.setRequestProperty ("Host", "192.168.1.36"); connection.setRequestProperty ("Expect", "100-continue"); È giusto per Android? – AndroiDBeginner

+0

Non ho molta conoscenza di Android. Inoltre, vedi il commento sul tuo ques. – Rites