我的应用程序正试图连接到Salesforce API并下拉其中存在的所有联系人。响应json对象有一个名为“totalSize”的键,它表示33231条记录。当我尝试作为JSONArray访问记录时,我的JSONArray只包含2000条记录。 jsonobject可能会被截断。你能帮忙吗?以下是我的代码。当你的服务器配置(可能由默认值),以响应网络号召数据量有限时JSONObject在Android中被截断
JSONObject asJSONObject = new JSONObject(new JSONTokener(result));
int totalRecordsSize = Integer.parseInt(asJSONObject.getString("totalSize"));
System.out.println("JSON_RESULT_SIZE : "+totalRecordsSize);
JSONArray array = (JSONArray)asJSONObject.get("records");
int count = array.length();
System.out.println("JSON_ARRAY_SIZE : "+count);
感谢
Json对象很有可能被服务器而不是Android截断。因此,您可能希望在您的问题中包含有关您对服务器的呼叫的一些详细信息;你使用什么类型的API(REST,SOAP,Bulk),你试过做哪种调用。如果问题出在服务器或Android上,请尝试使用wireshark等工具嗅探您的网络通信,并检查服务器的实际响应情况,以便获得清晰的结果。它是否包含33231条记录或仅包含2000条记录。发布结果后,它将帮助其他人帮助您,您甚至可以自己找到解决方案。 – nheimann1