Java 将JSONObject转换为List的方法<;NameValuePair>;
嗨,我正在创建一个android应用程序。在我的应用程序中,我有一些表单字段,比如edittext和单选按钮,我通过从所有表单字段中检索文本来创建一个Java 将JSONObject转换为List的方法<;NameValuePair>;,java,php,android,json,Java,Php,Android,Json,嗨,我正在创建一个android应用程序。在我的应用程序中,我有一些表单字段,比如edittext和单选按钮,我通过从所有表单字段中检索文本来创建一个JSONObject。JsonObject已成功创建。现在我想把这个对象传递到我的PHP页面,在那里我编写了获取这些细节并将其存储在数据库中的代码。我的问题是我不明白如何通过httpPost或httpGet方法发送这个JSON对象。我知道的唯一方法是通过List发送参数,所以我正在尝试将JSONObject转换为List。有谁能提供一种方法,可以直
JSONObject
。JsonObject已成功创建。现在我想把这个对象传递到我的PHP页面,在那里我编写了获取这些细节并将其存储在数据库中的代码。我的问题是我不明白如何通过httpPost
或httpGet
方法发送这个JSON对象。我知道的唯一方法是通过List
发送参数,所以我正在尝试将JSONObject转换为List
。有谁能提供一种方法,可以直接将我的JSONObject转换为List
。是否有任何预定义的方法来执行此操作。或者任何一个可以提供解决方案,我可以通过JSONObject直接发送到PHP并在那里检索。将JSONObject作为字符串传递给字符串实体构造函数,然后将其传递给setEntity()
示例:
HttpPost request = new HttpPost("//website");
StringEntity params =new StringEntity("passmyjson=" + yourJSONOBject.toString());
request.addHeader("content-type", "//header");
request.setEntity(params);
HttpResponse response = httpClient.execute(request);
在php文件中检查它是否工作强>
<?php
print_r($_POST);
$json_string = $_POST['passmyjson'];
$json = json_decode($json_string);
print_r($json);
?>
您可以使用。我假设您已经有一个PHP处理程序来处理这个请求。简单地说
- 创建您的
JSONObject
- 把你想要的值
- 将该json发送到php处理程序
- 您需要以
application/x-www-form-urlencoded
json={"key": "val"}
您可以在php端像这样处理这个问题
<?php
.....
$json = $_POST["json"]; // This will be json string
.....
谢谢你们,我拿到了
我在我的android活动类中添加了以下几行
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpResponse httpResponse;
HttpPost httppost = new HttpPost(link); //-->link is the php page url
httppost.setEntity(new StringEntity(obj.toString())); //-->obj is JSONObject
httpResponse = httpClient.execute(httppost);
HttpEntity httpEntity = httpResponse.getEntity();
在我的php文件中,我添加了以下代码
$msg=json_decode(file_get_contents('php://input'), true);
为了从接收到的Json字符串中获取特定值,我添加了这个$data=$msg['name']代码>
它正在工作为什么不按原样发送整个JSON呢。使用参数json=JSONObject.toString()
添加一个NameValuePair
。
$msg=json_decode(file_get_contents('php://input'), true);