我仍然对如何将我的Android应用程序连接到PHP脚本持怀疑态度。我在某处看到以下代码将应用程序连接到服务器。但我是android的新手,所以我不知道如何真正使用它。
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpGet httpGet = new HttpGet("http://url.to.my.app.com");
HttpResponse response = httpClient.execute(httpGet);
// handle response'
我知道这会打开与在线服务器的连接,但我不明白的是服务器返回了什么样的响应以及如何处理它。另外,我想知道如何通过POST将数据从我的应用程序发送到服务器。
(如果您可以提供自己的一些代码,那也会有所帮助)谢谢!
答案 0 :(得分:1)
这将打开一个连接并向服务器发送一个http GET请求。您的PHP脚本在服务器端执行此请求并返回一些内容。您可以使用以下代码来处理响应。
HttpEntity entity = response.getEntity();
if (entity != null) {
InputStream instream = entity.getContent();
String result = RestClient.convertStreamToString(instream);
}
对于POST执行,您需要执行以下操作。
// Create a new HttpClient and Post Header
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://www.yoursite.com/script.php");
try {
// Add your data
List <NameValuePair> nvps = new ArrayList <NameValuePair>();
nvps.add(new BasicNameValuePair("test1","test1" ));
nvps.add(new BasicNameValuePair("test2", "test2" ));
httppost.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8));
// Execute HTTP Post Request
HttpResponse response = httpclient.execute(httppost);
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
} catch (IOException e) {
// TODO Auto-generated catch block
}