我正在尝试从Google URL api中提取长网址。以下是代码片段,我正在尝试继续: `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
代码正在接收完整的网址(http://www.google.com),但我对JSONArray做错了。
答案 0 :(得分:0)
尝试jsonObj.getString(“longUrl”)而不是jsonObj.getJSONArray(“longUrl”),因为“longUrl”是一个String而不是一个数组,当然,将结果分配给一个String而不是一个JSONArray。