URLConnection 객체를 사용하여 안드로이드 클라이언트에서 서버로 데이터를 전송합니다.안드로이드 클라이언트에서 URLConnection 객체와 Httppost를 사용하는 사이에
URL url = new URL("http://10.0.2.2:8080/hello");
URLConnection connection = url.openConnection();
connection.setDoOutput(true);
ObjectOutputStream out=new ObjectOutputStream(connection.getOutputStream());
String s="check"+","+susername;
out.writeObject(s);
out.flush();
out.close();
하지만 많은 안드로이드 프로그램이 httppost를 사용하여 다음과 같은 방식으로 데이터를 보냈습니다.
HttpClient client=new DefaultHttpClient();
HttpPost httpPost=new HttpPost(LOGIN_ADDRESS);
List pairs=new ArrayList();
String strUsername=username.getText().toString();
String strPassword=password.getText().toString();
pairs.add(new BasicNameValuePair("username", strUsername));
pairs.add(new BasicNameValuePair("password", strPassword));
httpPost.setEntity(new UrlEncodedFormEntity(pairs));
HttpResponse response= client.execute(httpPost);
둘 사이의 차이점을 설명하십시오. 서블릿의 후자의 경우 데이터를 어떻게받을 수 있습니까? 이 HttpPost에 대해 간략하게 설명하십시오. 인터넷에서 나는 코드를 발견했습니다. pls는 HttpPost와 그 메소드에 대한 단계별 설명과 서블릿에서 데이터를 수신하는 방법을 제공합니다. 링크가 정상적으로 작동합니다.
froyo가 이전에 버그가 있어도 계속 사용하지 않도록 설정하십시오. http://android-developers.blogspot.com/2011/09/androids-http-clients.html – HelmiB
은 HttpURLConnection이 성숙하기 위해 더 많은 시간이 필요하며, 안드로이드 4.2에서도 버그를 발견했습니다. 연결은 확률이 더 컸다. 연결되지 않거나 알 수없는 이유로 연결하지 못합니다. – hyena