当 Android 应用程序发送此对象时,我可以在 PHP 应用程序中读取 JSON 对象吗?我不知道我是否可以在简单的 php 中使用 json_decode(),这是从 android 向 php 应用程序发送 json 对象的代码
尝试 { Log.i("----------", " _ __ _ __ 4 _ __ _ ");
httpParams = new BasicHttpParams();
Log.i("-------------", "_____________5_______________");
HttpConnectionParams.setConnectionTimeout(httpParams, TIMEOUT_MILLISEC);
Log.i("-------------", "________________6____________");
HttpConnectionParams.setSoTimeout(httpParams, TIMEOUT_MILLISEC);
Log.i("-------------", "________________7____________");
httpclient = new DefaultHttpClient(httpParams);
Log.i("-------------", "_______________8_____________");
httppost = new HttpPost(url);
Log.i("-------------", "_________________9___________");
// preciser le type d'envois
httppost.setHeader("Content-Type", "application/json");
Log.i("-------------", "__________________10__________");
json = new JSONObject();
Log.i("-------------", "________________11____________");
json.put("action", action);
Log.i("-------------", "_________________12___________");
json.put("User", User);
Log.i("-------------", "_________________13___________");
json.put("Password", Password);
Log.i("-------------", "_________________14___________");
json.put("IMEI", "356299046324945");
Log.i("-------------", "__________________15__________");
httppost = new HttpPost(url);
Log.i("-------------", "___________________16_________");
httppost.setHeader("json", json.toString());
Log.i("-------------", "____________________17________");
HttpResponse response = httpclient.execute(httppost);
Log.i("-------------", "_______________________18_____");
HttpEntity entity = response.getEntity();
Log.i("-------------", "________________________19____");
//******************************************
if (entity != null) {
Log.i("-------------", "___________________20__________");
String result = null;
Log.i("-------------", "_________________21____________");
try{
Log.i("-------------", "__________________22___________");
InputStream instream = entity.getContent();
Log.i("-------------", "___________________23__________");
reader = new BufferedReader(new InputStreamReader(instream,"iso-8859-1"),8);
Log.i("-------------", "____________________24_________");
sb = new StringBuilder();
Log.i("-------------", "_____________________25________");
line = null;
Log.i("-------------", "________________26_____________");
while ((line = reader.readLine()) != null) {
Log.i("-------------", "___________________27__________");
sb.append(line + "\n");
Log.i("-------------", "_________________28____________");
}
Log.i("-------------", "______________________29_______");
instream.close();
Log.i("-------------", "____________________30_________");
result=sb.toString();
Log.i("-------------", "___________________31_________");
// Log.i("log_tag", "Error converting result "+result.toString());
Log.i("-------------", "_________________32____________");
}
这是在php中读取json对象的代码
$decoded = json_decode($_GET['json'], true);
//$decoded = json_decode($_POST['json']);
// do something with data here
$Longitude = $decoded['action'];
$Lattetude = $decoded['User'];
$l= $decoded['Password'];
$la = $decoded['IMEI'];
但是在执行时我收到了这个错误
Error parsing data org.json.JSONException: Value <br of type java.lang.String cannot be converted to JSONObject
我认为 php 应用程序没有从 $_GET() 中提取 json 对象