Android, как отправить имя пользователя и пароль в веб-сервис в качестве полей заголовка? - PullRequest
0 голосов
/ 08 марта 2012

Я пытаюсь создать приложение на телефоне Android, которое принимает имя пользователя и пароль от пользователя, зашифровывает пароль с помощью md5, а затем подключается к URL с этими параметрами.

код для подключения работал нормально на iphone, ноя не могу найти что-то подобное в Android:

NSMutableURLRequest* request = [NSMutableURLRequest requestWithURL:myURL];

[request setHTTPMethod:@"GET"];

[request addValue:usernameField.text forHTTPHeaderField:@"UserName"];

[request addValue:MD5Pass2 forHTTPHeaderField:@"Password"];

я пытался подключиться через httpurlconnection использовал post / get Dataoutputstream, httpclient отправлять параметры httpget / httppost, но безуспешно.

Я думаю, мне нужно отправить параметры как поле заголовка, но я не знаю как.

примечание: я сравнил результаты шифрования, и это было правильно.

Ответы [ 2 ]

5 голосов
/ 09 марта 2012

Я считаю библиотеку Apache гораздо более простой, когда дело касается HTTP.

Примером этого может быть следующий:

DefaultHttpClient client = new DefaultHttpClient();
HttpGet request = new HttpGet();
request.setURI(new URI("http://www.internet.com/api"));

Обычно с запросом GET вы быиспользуйте параметры GET, то есть добавьте их в конец URL следующим образом:

String url = "http://www.internet.com/api?UserName=YourUsername&Password=yourpassword" 
request.setURI(new URI(url));

Но так как вы указали, что хотите, чтобы они были в качестве заголовков, вы можете:

request.addHeader("UserName", username);
request.addHeader("Password", password);

, а затем:

HttpResponse response = client.execute(request);
//Parse the response from the input stream object inside the HttpResponse
1 голос
/ 09 марта 2012

вы можете попробовать использовать HttpUrlConnection с этим http://developer.android.com/reference/java/net/URLConnection.html#addRequestProperty%28java.lang.String,%20java.lang.String%29

...