无法检索JSON响应

时间:2011-12-24 17:55:57

标签: android json

我有一个为我的android应用程序提供数据的url,我从教程中学到了并编写了一些代码。它适用于其他网址,但这个

http://acolyteserv.appspot.com/Products/getProductMatchedList/?format=json&p0=galaxy&p1=4&p2=all

代码是:

private void testere()
{
    InputStream is = null;
    String result;
    try{
        HttpClient httpclient = new DefaultHttpClient();
        HttpPost httppost = new HttpPost("http://acolyteserv.appspot.com/Products/getProductMatchedList/?format=json&p0=galaxy&p1=4&p2=all");
        HttpResponse response = httpclient.execute(httppost);
        HttpEntity entity = response.getEntity();
        is = entity.getContent();


        try{
            BufferedReader reader = new BufferedReader(new InputStreamReader(is));

            StringBuilder sb = new StringBuilder();
            String line = null;

            while ((line = reader.readLine()) != null) {
                    sb.append(line + "\n");

            }

            is.close();
            result=sb.toString();


            Toast t=Toast.makeText(getApplicationContext(), result, Toast.LENGTH_LONG);
            t.show();
    }catch(Exception e){
            Log.e("log_tag", "Error converting result "+e.toString());
    }

    }
    catch(Exception e){
        Log.e("log_tag", "Error in http connection "+e.toString());
    }


}

如果我使用这个URL toast,结果会给我一个空字符串,但如果我使用像

这样的示例网址
http://api.geonames.org/earthquakesJSON?north=44.1&south=-9.9&east=-22.4&west=55.2&username=demo

请告诉我这里我做错了什么,我是JSON和整个网络服务世界的新手。

2 个答案:

答案 0 :(得分:1)

您正在使用HttpPost,但未向请求提交任何实体。

请尝试使用HttpGet。鉴于您的URL等内容的名称,我怀疑GET是您真正想要的。

答案 1 :(得分:1)

将您的请求参数添加到您的HttpEntity。或者使用HttpGet

相关问题