如何从节点js返回值到android?

时间:2014-03-20 08:37:00

标签: android node.js get

我创建android应用程序作为客户端和节点作为服务器,当我从android请求值到节点时我遇到问题,我在android中使用此代码与节点js进行通信

String xResult = getRequestJSON("http://mydomain.com:8888");
public String getRequestJSON(String Url){

       String sret="";
        HttpClient client = new DefaultHttpClient();
        HttpGet request = new HttpGet(Url);
        try{
          HttpResponse response = client.execute(request);
          sret =requestJSON(response);

        }catch(Exception ex){
        }
        return sret;
    }


    public static String requestJSON(HttpResponse response){
        String result = "";
        try{
            InputStream in = response.getEntity().getContent();
            BufferedReader reader = new BufferedReader(new InputStreamReader(in));
            StringBuilder str = new StringBuilder();
            String line = null;
            while((line = reader.readLine()) != null){
                str.append(line + "\n");
            }
            in.close();
            result = str.toString();
        }catch(Exception ex){
            result = "Error";
        }
        return result; 
    }

我在节点中得到了这样的结果。

[{"posid":"P0S6f50b314b2c279a2083cb0ef821ccb4d20140218120720","id_a":"ltv@ltv.com","gambar_a":"6f50b314b2c279a2083cb0ef821ccb4d.jpg","user":"lutfi soe","pwaktu":"2014-02-18T05:07:20.000Z","posnya":"test dr android","plat":-7.983757710988161,"plong":112.6549243927002,"pjenis":"I","vote":0}]

我的问题是,我如何在android中接收json,并解析为字符串?

感谢

2 个答案:

答案 0 :(得分:0)

如果您以正确的格式接收Json字符串,则可以使用JSON jar来解析此json。

您可以获得JSON解析here

的教程

答案 1 :(得分:0)

我认为你的问题更多的是关于如何在java中解析和访问结果[阅读Android]。

这是一个可以帮助JavaScript type arrays in JAVA

的解决方案
JsonArray yourArray = new JsonParser()
                      .parse("[[\"2012-14-03\", 2]]")
                      .getAsJsonArray();
// Access your array like so - yourArray.get(0).getAsString();
// yourArray.get(0).getAsInt() etc

以上是使用名为Gson

的库 P.S:我只是抄袭了自己的答案。不确定使用什么标准将此问题标记为重复