【发布时间】:2015-06-19 03:25:07
【问题描述】:
这是我第一次使用 JSON 开发一个 PHP 网站,并且还使用 Android 设备上的在线数据库,我的问题是我不知道为什么我的脚本返回 null,我没有发送任何变量。
我的 PHP 代码是:
<?php
$data = file_get_contents('php://input');
$json = json_decode($data, true);
var_dump($json);
?>
问题是:Android 设备发送到我的 php 的 JSON 数据的收集方式是什么?
如果有人问这是我将数据从我的 Android 设备发送到 php 的方式:
在我的 android 应用程序中,我以这种方式发送 JSON 对象:
HttpResponse response =null;
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpConnectionParams.setSoTimeout(httpClient.getParams(), 5000);
HttpConnectionParams.setConnectionTimeout(httpClient.getParams(),3000);
HttpPost request = new HttpPost(url);
StringEntity se = new StringEntity(json.toString());
se.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE,
"application/json"));
try{
response = httpClient.execute(request);
}catch(SocketException sE)
{
throw sE;
}
我从我的 android 代码发送的数据结构如下:
JSONObject json = new JSONObject();
try {
json.put("user", 0);
json.put("status", "Confirmed");
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
【问题讨论】:
-
为什么要抓取原始输入?将其发布到您的脚本并使用
$_POST -
我无法弄清楚
url包含什么。由于您的 PHP 和 Android 代码看起来不错。我曾开发过类似的应用程序,因此请进一步澄清。 -
您似乎没有将字符串实体发送到任何地方。您需要将其添加到http请求中
-
@AshwaniGoyal
urliswww.example.com/api.php -
好的,这意味着php文件是
api.php。现在我需要查看您从 Android 代码发送的数据结构。