目前我只能实际读取包含json格式的php文件。
我想要做的是读取一个echo语句(用json格式)代替读取实际文件。
到目前为止,这是我的android代码,请求包含json格式的php文件供我阅读:
// defaultHttpClient
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(url);
HttpResponse httpResponse = httpClient.execute(httpPost);
HttpEntity httpEntity = httpResponse.getEntity();
is = httpEntity.getContent(); // This is storing the contents from the php file
提前致谢
这是php文件:
{
"user": [
{
"id": "001",
"name": "Raj Amal",
"email": "raj.amalw@gmail.com"
}
]
}
I want to do this:
<?php
echo '{
"user": [
{
"id": "001",
"name": "Raj Amal",
"email": "raj.amalw@gmail.com"
}
]
}';
?>
答案 0 :(得分:1)
尝试以下,
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(url);
HttpResponse httpResponse = httpClient.execute(httpPost);
现在,服务器的响应将在httpResponse
中找到。您可以将其转换为如下所示的字符串。
String myResponseString = EntityUtils.toString(httpResponse.getEntity());
记录字符串myResponseString
以查看服务器的响应
答案 1 :(得分:0)
我认为您的问题在于服务器配置。意思是 - 普通的php(这是json)被服务器识别为json并返回适当的头文件。 而你的echo以纯文本形式返回而没有HttpEntity的标题(不推荐使用!)。
在客户端,上面的答案是使用HttpClient的方法。
在服务器端:
<?PHP
$data = /** put your content here! **/;
header('Content-Type: application/json');
echo json_encode($data);