Java 如何接收json响应
我需要将响应转换为字符串Java 如何接收json响应,java,android,json,http,Java,Android,Json,Http,我需要将响应转换为字符串 HttpClient httpclient = new DefaultHttpClient(); Log.d("HTTP","Exe"); String url=Sign(token); Log.d("HTTP","Exe"); HttpPost httpPost; httpPost = new HttpPost(url); 响应(json)应该类似于 { "
HttpClient httpclient = new DefaultHttpClient();
Log.d("HTTP","Exe");
String url=Sign(token);
Log.d("HTTP","Exe");
HttpPost httpPost;
httpPost = new HttpPost(url);
响应(json)应该类似于
{
"url": "http://db.tt/APqhX1",
"expires": "Tue, 01 Jan 2030 00:00:00 +0000"
}
我是如何收到它的?我正在使用Android(java)…如果你用谷歌搜索并尝试一下,有很多例子:
response = client.execute(httpPost);
HttpEntity httpEntity = response.getEntity();
InputStream is = httpEntity.getContent();
。。将Inputstream转换为字符串这是获取任何json作为http响应的方法。我希望它会有用
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();
InputStream is = entity.getContent();
try {
BufferedReader reader = new BufferedReader(new InputStreamReader(is, "utf-8"), 256);
StringBuilder sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) sb.append(line);
result = sb.toString();
is.close();
} catch (Exception e) {}
JSONArray jArray = new JSONArray(result);
for(int i = 0; i < jArray.length(); i++) {
JSONObject json_data = jArray.getJSONObject(i);
String url= json_data.getString("url");
String expires= json_data.getString("expires");
}
HttpResponse response=httpclient.execute(httppost);
HttpEntity=response.getEntity();
InputStream=entity.getContent();
试一试{
BufferedReader=新的BufferedReader(新的InputStreamReader(is,“utf-8”),256;
StringBuilder sb=新的StringBuilder();
字符串行=null;
而((line=reader.readLine())!=null)sb.append(line);
结果=sb.toString();
is.close();
}捕获(例外e){}
JSONArray jArray=新JSONArray(结果);
for(int i=0;i