如何將我的用戶名和密碼發送到服務器,並在Android中使用httpclient從服務器獲得響應?我研究了很多網站,但我找不到任何我想要的東西。發送用戶名和密碼到服務器並在Android中獲得響應
2
A
回答
9
製作一個類適配器,並把這個代碼...在這裏,我假設你正在使用json webService。
public String login(String uname, String password)
{
InputStream is = null;
String result = "";
ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
try
{
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("Your Url");
nameValuePairs.add(new BasicNameValuePair("emailid", uname));
nameValuePairs.add(new BasicNameValuePair("password", password));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();
is = entity.getContent();
}
catch (Exception e)
{
Log.e("log_tag", "Error in http connection " + e.toString());
}
// convert response to string
try
{
BufferedReader reader = new BufferedReader(new InputStreamReader(is, "iso-8859-1"), 8);
StringBuilder sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null)
{
sb.append(line).append("\n");
}
is.close();
result = sb.toString();
Log.v("log","Result: " + result);
}
catch (Exception e)
{
Log.v("log", "Error converting result " + e.toString());
}
return result;
}
做出這樣的電話...
Adapter adb = new Adapter();
response = adb.login(edtLoginemail.getText().toString(), edtLoginPassword.getText().toString());
0
試試這個它可以幫助你。
userId = editTextUserName.getText().toString();
password = editTextPassword.getText().toString();
String xml = "<?xml version=\"1.0\" encoding=\"utf-8\"?>"
+ "<login><User>" + userId + "</User>"
+ "<Password>" + password + "</Password></login>";
serverCall(xml);
serverCall(xml);
private void serverCall(final String xml)
{
ConnectivityManager conMan = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
if(conMan.getActiveNetworkInfo() != null && conMan.getActiveNetworkInfo().isConnected())
{
result = new Connection().getResponse("http://localhost/login.php" , xml);
if(result.equals("yes") {
//registration done
} else {
//failed
}
}
}
Connection.java
public String getResponse(String connUrl, String xml) {
DefaultHttpClient httpClient = null;
try {
MultipartEntity mp = new MultipartEntity(HttpMultipartMode.BROWSER_COMPATIBLE);
HttpPost method = new HttpPost(connUrl);
method.setEntity(mp);
mp.addPart("xml_request", new StringBody(xml));
httpClient = new DefaultHttpClient();
HttpResponse response = httpClient.execute(method);
if(response.getStatusLine().getStatusCode() == 200){
ByteArrayOutputStream outstream = new ByteArrayOutputStream();
response.getEntity().writeTo(outstream);
return outstream.toString();
}
}
catch(Exception e) {
Log.v("APP", "Exception while create connection for getResponse from server with: " + e.getMessage());
}
finally {
httpClient.getConnectionManager().shutdown();
}
return "";
}
0
你必須要對服務器端的Web服務。
然後至少有兩種方法將數據發送到服務器並從您的代碼獲得響應。搜索HttpPost
& HttpUrlConnection
。第一種方法更容易使用POST方法發送數據,但也很慢。
相關問題
- 1. 發送xml數據到服務器並獲得響應
- 2. 在web服務調用中發送用戶名和密碼
- 3. 使用json發送用戶名和密碼到web服務
- 4. 我應該如何將用戶名和密碼發送到服務器?
- 5. 發送用戶名和密碼到Web服務
- 6. 如何發送用戶名和密碼到網絡服務
- 7. 發送UDP數據包到服務器並得到響應
- 8. VB發送Rcon命令並獲得響應。 (CS:GO服務器)
- 9. 向服務器發送HTTP POST請求並獲得響應?
- 10. 發送xml到Web服務並獲得響應
- 11. 如何發送用戶名和密碼使用發佈到iphone服務器中的服務器
- 12. 如何獲得用戶名和用戶名到spinnenr併發送用戶ID服務器
- 13. 使用用戶名和密碼將C#發送給Cassandra服務
- 14. 通過服務器請求發送asana用戶ID和密碼,並獲得APIKey作爲迴應
- 15. HTTP POST請求 - 將用戶名和密碼發送到服務器
- 16. 什麼是HTTP命令發送用戶名和密碼到Web服務器?
- 17. 以編程方式將用戶名和密碼發送到Apache Web服務器
- 18. 從服務器發送響應android
- 19. 發送用戶名/密碼到SOAP服務
- 20. 在android中將服務器響應推送到客戶端?
- 21. 用cURL發送用戶名和密碼
- 22. 如何發送用戶名和密碼從android到ASP頁
- 23. 發佈到XML肥皂服務並且很難獲得服務器響應
- 24. 使用Spring .NET將用戶名和密碼發送到.net Web服務
- 25. 發送iPhone攝像頭捕獲的圖像到Web服務並獲得響應?
- 26. 需要幫助從服務器獲取用戶名和密碼
- 27. 接收服務器響應並將其發送到瀏覽器?
- 28. 如何通過XML在服務器上發送數據,並獲取響應android
- 29. 將用戶名+加密密碼發送到REST風格的服務
- 30. symfony web服務用戶名和密碼
你的問題並不清楚。 什麼用戶名和密碼?什麼服務器?你期待什麼反應? –
您必須在服務器端進行** web服務**。然後至少有兩種方法將數據發送到服務器並從代碼中獲得響應。搜索「HttpPost」和「HttpUrlConnection」。第一個更容易使用。 – Flawyte