为什么只从Google阅读器中恢复某些Feed?

时间:2009-11-26 06:52:14

标签: java eclipse gwt google-reader

我想解析我的公共谷歌阅读器提要的结果。我正在用gwt编写一个应用程序,到目前为止,我一直在用一行示例:

String gdata = 
    "http://www.google.com/base/feeds/snippets?alt=json-in-script&callback=";

检索Feed

public void handle(JavaScriptObject jso) {
    JSONObject json = new JSONObject(jso);
    JSONArray ary = json.get("feed").isObject().get("entry").isArray();
    Window.alert(json.toString());
}

并且数据显示在面板上+我在警报窗口中看到它。但是,当我更改网址以便我可以使用我的Feed而不是示例时,一切都无效。

以下是我尝试格式化网址的一些方法:

http://www.google.com/reader/public/javascript/feed/http://www.google.com/reader/public/atom/user%2F17524205173321155204%2Flabel%2Fpub?alt=json-in-script&callback=
http://www.google.com/reader/public/javascript/feed/http://www.google.com/reader/public/atom/user%2F11035509885961399965%2Fstate%2Fcom.google%2Fbroadcast?callback=?
http://www.google.com/reader/public/javascript/feed/http://www.google.com/reader/public/atom/user%2F11035509885961399965%2Fstate%2Fcom.google%2Fbroadcast?callback=?

表面上的提要是相同的,除了一个有效的例子,所有文本都在一条长行上,其他的都有空格。这会导致问题吗?我该怎么做才能解决它?

我想针对从Feed中返回的数据运行正则表达式。有一个更好的方法吗?

非常感谢!

1 个答案:

答案 0 :(得分:0)

示例是Google Base http://www.google.com/base/api/demo/html/demo.html产品的网址,而您尝试做的是Google Reader产品,该产品使用不同的数据返回格式。我不熟悉这两种格式,但从我看到的情况来看,您可能应该忘记基本格式并查看阅读器数据的格式化。

此外。 Base api(您使用的示例)似乎会自动插入回调方法名称(我从您的示例中得出结论),因此您可能需要更改URL并附加:callback=gdata.io.handleScriptLoaded以使其在第一个中起作用的地方。