web-dev-qa-db-fra.com

Comment définir le type de contenu sur HttpURLConnection?

Savez-vous comment définir Content-Type le HttpURLConnection ?

Le code suivant est sur Blackberry et je veux l'équivalent Android:

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

Est-ce bon pour Android?

S'il vous plaît donnez votre avis.

44
AndroiDBeginner

Si vous voulez vraiment utiliser la méthode HttpURLConnection vous pouvez utiliser la méthode setRequestProperty comme:

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

Cependant, si j'étais vous, je chercherais à utiliser les bibliothèques HTTP Apache . Ils sont un peu plus élevés et plus faciles à utiliser. Avec eux, vous le feriez avec quelque chose comme:

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
}
67
Jeremy Logan
connection.setRequestProperty("Content-Type", "VALUE");
14
Rites