我正在研究一个小应用程序并使用GWT构建它。 我刚刚尝试向远程服务器发出请求,该远程服务器将返回响应为JSON。 我试过使用覆盖类型的概念,但我无法得到它的工作。我一直在改变代码,所以它离开了Google GWT教程离开的地方。获取和使用远程JSON数据
JavaScriptObject json;
public JavaScriptObject executeQuery(String query) {
String url = "http://api.domain.com?client_id=xxxx&query=";
RequestBuilder builder = new RequestBuilder(RequestBuilder.GET,
URL.encode(url + query));
try {
@SuppressWarnings("unused")
Request request = builder.sendRequest(null, new RequestCallback() {
public void onError(Request request, Throwable exception) {
// violation, etc.)
}
public void onResponseReceived(Request request,
Response response) {
if (200 == response.getStatusCode()) {
// Process the response in response.getText()
json =parseJson(response.getText());
} else {
}
}
});
} catch (RequestException e) {
// Couldn't connect to server
}
return json;
}
public static native JavaScriptObject parseJson(String jsonStr) /*-{
return eval(jsonStr);
;
}-*/;
在Chrome的调试器,我得到umbrellaexception,无法看到堆栈跟踪和GWT调试器的NoSuchMethodError死...任何想法,指针?
你能举个例子对象的你希望通过JSON接受? – Wesley 2011-04-01 22:06:09
{“matching_results”:165958,“videos”:[{“video_id”:“50953524”,“title”:“Wyclef Jean以Akon为特色”}]}我从第一位开始,返回的数据。因为它的块很大而切碎 – zcourts 2011-04-01 23:54:07