如何使用随机/未知值类型解析密钥的json数据?在下面的json数据中,密钥数据可以是json对象或字符串,具体取决于服务器的响应。
响应1(Json对象)
userPosition
回应2(字符串)
account.shareLocation
答案 0 :(得分:1)
你能做的最好的事情是
Object data = response.get("data");
虽然,您可以尝试
boolean gotObject = true;
String dataString = null;
// Try to request a JSONObject as a String
dataString = String.valueOf(response.optJSONObject("data"));
// If there wasn't a JSONObject, then try to get a String
if (dataString.isEmpty() || dataString.equals("null")) {
dataString = response.optString("data");
gotObject = false;
}
然后,你可以试试这个
if (gotObject) {
JSONObject data = new JSONObject(dataString);
}
实际上,您应该制作更一致的服务器API