我必须在 URL http://api.twitter.com/1/users/show.json?screen_name=Kaka上做一个 http GET 请求,我会得到一个 JSON 对象,但我不知道我必须怎么做做。
任何人都可以帮助我吗?
谢谢。
我必须在 URL http://api.twitter.com/1/users/show.json?screen_name=Kaka上做一个 http GET 请求,我会得到一个 JSON 对象,但我不知道我必须怎么做做。
任何人都可以帮助我吗?
谢谢。
或者,从另一个相当简单的示例,使用org.json.me
添加到 BlackBerry Java 6.0 的包:
HttpConnection conn = null;
InputStream in = null;
ByteArrayOutputStream out = null;
try {
String url = "http://api.twitter.com/1/users/show.json?screen_name=Kaka";
conn = (HttpConnection) Connector.open(url, Connector.READ);
conn.setRequestMethod(HttpConnection.GET);
int code = conn.getResponseCode();
if (code == HttpConnection.HTTP_OK) {
in = conn.openInputStream();
out = new ByteArrayOutputStream();
byte[] buffer = new byte[in.available()];
int len = 0;
while ((len = in.read(buffer)) > 0) {
out.write(buffer);
}
out.flush();
String response = new String(out.toByteArray());
JSONObject resObject = new JSONObject(response);
String key = resObject.getString("Insert Json Key");
Vector resultsVector = new Vector();
JSONArray jsonArray = resObject.getJSONArray("Insert Json Array Key");
if (jsonArray.length() > 0) {
for (int i = 0; i < jsonArray.length();i++) {
Vector elementsVector = new Vector();
JSONObject jsonObj = jsonArray.getJSONObject(i);
elementsVector.addElement(jsonObj.getString("Insert Json Array Element Key1"));
elementsVector.addElement(jsonObj.getString("Insert Json Array Element Key2"));
resultsVector.addElement(elementsVector);
}
}
}
} catch (Exception e) {
Dialog.alert(e.getMessage());
} finally {
if (out != null) {
out.close();
}
if (in != null) {
in.close();
}
if (conn != null) {
conn.close();
}
}
显然,在第二个示例中,您必须插入 JSON 数据实际使用的 JSON 键的名称(留作海报练习)。此外,您可能会了解 JSON 对象的结构,如对象和数组等。因此,您将 JSON 数据解压缩为 JSONObjects 和 JSONArrays 的代码可能与上面的代码略有不同,具体取决于您自己的 JSON 数据。