【发布时间】:2014-05-21 15:27:09
【问题描述】:
首先,我对 JSON 非常陌生。我一直在尽可能多地阅读它。虽然我明白了这个概念,但实施它对我来说完全是另一回事。
所以,我有一个从 JSON 网页读取和显示数据的应用程序。例如,我可以提取该网站中显示的时间:http://date.jsontest.com/
使用该网站的 HTML,我通过以下方式将 JSON 对象添加到我的 HTML 页面:
<html>
<body>
<pre>
{
"score": "30-20"
}
</pre>
</body>
</html>
但是,现在每次我尝试检索分数时,该应用都会引发 JSON 异常。
我的问题是,“将 JSON 对象添加到 HTML 页面中的 pre 标记是在网页上创建 JSON 对象的正确方法吗?”
如果不是,正确的做法是什么?
编辑:这是我在 java 中用来检索 JSON 数据的代码:
StringBuilder url = new StringBuilder(URL);
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);
//JSONArray timeline = new JSONArray(0);
JSONObject last = new JSONObject(data);
return last;
}
else{
Toast.makeText(this, "Error", Toast.LENGTH_SHORT).show();
return null;
}
try 语句:
try {
json = lastTweet();
return json.getString("time");
//return "Oh Well";
}
谢谢。
【问题讨论】:
-
JSON 文件只有 JSON 标记。无需添加 HTML 标签。您如何尝试检索分数?
-
除了只有 JSON 标记外,服务器还可以发送
Content-type: application/json标头来表示类型。 -
您需要一个具有窗口范围的 javascript 对象,还是只想在页面中将其显示为文本?
-
@Sid,在网络标签打开时按 F5
-
@vp_arth,OP 没有使用 PHP。在 Java 中,在发送响应之前,您可以使用
response.setContentType("application/json");。