好的,前幾天我寫了一段Java代碼,向PHP文件發送post請求,以便將一些數據存儲在MySQL數據庫中並接收簡單的json_encode()字符串,例如來自PHP的「error_101」響應,它工作得很好。昨天我重新安裝了我的XAMPP,因爲我在openssl PHP擴展中遇到了一些問題,現在我的json_encode()沒有響應返回一個值。我已經檢查過phpinfo(),它說json支持已啓用。要提到從JAVA發送到PHP的值是JSON對象,並且json_decode()工作得很好!PHP json_encode()什麼也沒有返回
這裏是我的代碼從PHP發送到JAVA迴應:
<?php
header('Content-type: application/json');
echo json_encode("error_101");
?>
下面的代碼來獲得Java中的響應
HttpParams httpParams = new BasicHttpParams();
HttpConnectionParams.setConnectionTimeout(httpParams, 10000);
HttpConnectionParams.setSoTimeout(httpParams, 10000);
HttpClient client = new DefaultHttpClient(httpParams);
String url = "http://192.168.254.19/android/register.php";
HttpPost request = new HttpPost(url);
request.setEntity(new ByteArrayEntity(json.toString().getBytes("UTF8")));
request.setHeader("json", json.toString());
HttpResponse response = client.execute(request);
HttpEntity entity = response.getEntity();
String result = null;
if (entity != null) {
InputStream instream = entity.getContent();
InputStreamReader is_reader = new InputStreamReader(instream);
BufferedReader br = new BufferedReader(is_reader);
result = br.readLine();
Log.i("Read from server", result);
Toast.makeText(this, result, Toast.LENGTH_LONG).show();
}
我得到的迴應是 「<br />
」
你打開了錯誤報告嗎?
對我來說看起來像一個沉默的錯誤。 – prehfeldt
你說,「昨天我重新安裝了我的XAMPP ...」這可能意味着一些設置已經改回默認設置。可能有用的檢查他們。 – rossum