-1

我正在尝试从 Google URL api 中提取长 url。以下是代码片段,我正在尝试继续:` StringBuilder url = new StringBuilder(URL); url.append(shortUrl);

    HttpGet get = new HttpGet(url.toString());
    HttpResponse r = client.execute(get);
    int status = r.getStatusLine().getStatusCode();
    if(status == 200){
        HttpEntity e = r.getEntity();
        String data = EntityUtils.toString(e);

        JSONObject jsonObj = new JSONObject(data);
        JSONArray ja = jsonObj.getJSONArray("longUrl");

        JSONObject last = ja.getJSONObject(0);
        return last;

包含代码的函数返回一个 JSON 对象。在 logcat 中,我看到一个错误org.json.JSONException: Value http://www.google.com/ at longUrl of type java.lang.String cannot be converted to JSONArray

该代码正在接收完整的 url ( http://www.google.com ) 但我在 JSONArray 上做错了什么。

4

1 回答 1

0

尝试使用 jsonObj.getString("longUrl") 而不是 jsonObj.getJSONArray("longUrl"),因为“longUrl”是字符串而不是数组,当然,将结果分配给字符串而不是 JSONArray。

于 2013-07-03T20:08:23.527 回答