[英]Android can't fetch data from php
我正在使用此adt代碼從php url獲取echo數據。
class asynctask extends AsyncTask<String, String, String>{
@Override
protected String doInBackground(String... uri) {
HttpClient httpclient = new DefaultHttpClient();
HttpResponse response;
String responseString = null;
try {
response = httpclient.execute(new HttpGet(uri[0]));
StatusLine statusLine = response.getStatusLine();
if(statusLine.getStatusCode() == HttpStatus.SC_OK){
ByteArrayOutputStream out = new ByteArrayOutputStream();
response.getEntity().writeTo(out);
responseString = out.toString();
out.close();
} else{
//Closes the connection.
response.getEntity().getContent().close();
}
} catch (ClientProtocolException e) {
//TODO Handle problems..
} catch (IOException e) {
//TODO Handle problems..
}
return responseString;
}
@Override
protected void onPostExecute(String result) {
super.onPostExecute(result);
///////////////////////////////////////////////
Toast.makeText(getApplicationContext(), result, Toast.LENGTH_LONG).show();
try {
// txv1.setText(result);
}
catch (Exception e) {
// TODO: handle exception
}
}
}
並致電 -
new asynctask().execute("http://mmbics.com/get.php");
即使我看到php url上的回聲是什么,它確實無法正常工作。 它可以顯示其他沒有mysql請求的php echo。 請幫助我。 它也無法顯示這個php回音。
http://mmbics.com/index.php
首先,我建議不推薦使用DefaultHttpClient。 您應該將其更改為OkHttp客戶端或HttpUrlConnect。 請參閱下面的代碼段,您可以將其作為獲取此請求的參考。
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url("http://mmbics.com/get.php")
.get()
.build();
Response response = client.newCall(request).execute();
如果你堅持使用它,請告訴我。這是簡單的Http Get Request電話。
謝謝。
使用Volley它的網絡connectoin lib,它簡單而強大的lib,所以最好用這個來調用你的url,
StringRequest strReq = new StringRequest(Method.GET,
Const.URL_STRING_REQ, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
Log.d(TAG, response.toString());
msgResponse.setText(response.toString());
hideProgressDialog();
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
VolleyLog.d(TAG, "Error: " + error.getMessage());
hideProgressDialog();
}
}) {
@Override
public Priority getPriority() {
return priority;
}
};
請查看此參考: http : //www.androidhive.info/2014/05/android-working-with-volley-library-1/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.