我有一个 C# 中的 Web 应用程序,我使用 JsonSerializer 创建一个 json。现在我正在开发一个 android 应用程序,我正在尝试读取 json。
在我的 Android 应用程序上,我的代码是
try {
HttpClient client = new DefaultHttpClient();
client.getParams().setParameter(CoreProtocolPNames.USER_AGENT, "android");
HttpGet request = new HttpGet();
request.setHeader("Content-Type", "application/json; charset=utf-8");
request.setURI(new URI(uri));
HttpResponse response = client.execute(request);
in = new BufferedReader(new InputStreamReader(response.getEntity().getContent()));
StringBuffer sb = new StringBuffer("");
String line = "";
String NL = System.getProperty("line.separator");
while ((line = in.readLine()) != null)
{
sb.append(line + NL);
}
in.close();
String page = sb.toString();
JSONObject jsonObject = new JSONObject(page); // here it explodes
}
尝试创建 json 对象时它会爆炸,因为“page”的值是
"{\\"Key\\":\\"1\\",\\"RowVersion\\":[0,0,0,0,0,0,226,148].....
当我尝试手动(使用直接 GET url)在浏览器上获取 json 时,我得到
"{\"Key\":\"1\",\"RowVersion\":[0,0,0,0,0,0,226,148]......
当我手动复制此字符串时,它工作正常。
我该如何解决?