Получить контент/стиль из URL-адреса

Я разрабатываю приложение для Android для своего сайта. На сайте вы можете создавать пользователей и авторизоваться с ними.

Теперь я хочу, чтобы это было в приложении. Функция входа является проблемой.

У меня есть все формы (имя пользователя и пароль). Теперь я хочу подключиться к пользовательскому адресу на моем веб-сервере, например: http://domain.com/login.php?username=MyUserName&password=MyPassWord

Эта страница вернет «1», если логин был правильным, и «0», если нет. И я хочу, чтобы мое приложение подключалось к этому адресу, а затем получало контент/результат, который покидает мой веб-сервер.

Пожалуйста, помогите мне, я сижу ЧАСЫ, пытаясь сделать это правильно.


person Philip Andersson    schedule 27.11.2010    source источник


Ответы (1)


Я считаю, что вы ищете BasicHttpContext и DefaultHttpClient:

HttpContext httpContext = new BasicHttpContext();
HttpClient httpClient = new DefaultHttpClient();
HttpGet httpGet = new HttpGet("http://domain.com/login.php?username=MyUserName&password=MyPassWord");
HttpResponse response = httpClient.execute(httpGet, httpContext);

Не проверял код, но думаю, что это должно сработать.

Также помните, что ваше приложение должно иметь соответствующее разрешение INTERNET в вашем файл манифеста, чтобы разрешить доступ в Интернет.

person Julian    schedule 27.11.2010
comment
Спасибо! Кажется, это работает очень хорошо. Но я сделал некоторые изменения в коде. Объемный ответ HttpResponse = httpClient.execute(httpGet, httpContext); с попыткой поймать - person Philip Andersson; 27.11.2010
comment
Но когда я пробую это, я получаю ответ: org.apache.http.message.BasicHttpResponse@44943060 - person Philip Andersson; 27.11.2010
comment
Да, конечно, вы получите ответ типа HttpResponse (http://developer.android.com/reference/org/apache/http/HttpResponse.html). Затем вам нужно проанализировать этот результат, чтобы получить интересующие вас данные (посмотрите в документации методы, унаследованные от HttpMessage). - person Julian; 27.11.2010
comment
Кстати, вы можете найти помощь в том, как обрабатывать ответ с помощью ResponseHandler, как описано в ответе на этот вопрос: stackoverflow.com/questions/2573064/ - person Julian; 27.11.2010
comment
Да спасибо! Это заняло всего 30 минут, а до этого у меня ушло 3 часа безрезультатно. Спасибо! - person Philip Andersson; 27.11.2010