Часто требуется просто-напросто отправить на сервер обычный HTTP POST запрос.
Следующий код показывает как на Android отправить POST запрос и получить объект ответа, через который можно получить необходимую информацию с удаленного сервера.
Следующий код показывает как на Android отправить POST запрос и получить объект ответа, через который можно получить необходимую информацию с удаленного сервера.
public void postData() { // Создадим HttpClient и PostHandler HttpClient httpclient = new DefaultHttpClient(); HttpPost httppost = new HttpPost("http://www.moisaitik.ru/postdemo.php"); try { // Добавим данные (пара - "название - значение") List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2); nameValuePairs.add(new BasicNameValuePair("login", "andro")); nameValuePairs.add(new BasicNameValuePair("text", "Привет!")); httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); // Выполним запрос HttpResponse response = httpclient.execute(httppost); } catch (ClientProtocolException e) { // Ошибка :( } catch (IOException e) { // Ошибка :( } }
а как обработать ответ?(получить string)
ReplyDeleteString responseString = new String();
DeleteHttpEntity responseEntity = response.getEntity();
if(responseEntity!=null) {
responseString = EntityUtils.toString(responseEntity);
}
А как применять кодировку? Ведь многие серверы требуют, чтобы контент был в utf-8
ReplyDeleteвот так: httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs,"UTF-8"));
Delete