2010-08-08 78 views
2

基本上我的問題不是關於如何,它的關於爲什麼? :) 現在我會告訴我知道什麼,然後告訴我我錯過了什麼(如果有的話)。使用谷歌飼料API訪問遠程RSS訂閱源

在Firefox中,您無法使用Javascript訪問遠程XML文件(如RSS源),因爲您將獲得拒絕訪問錯誤。通常爲了解決它,我們實現代理(內部頁面來查詢內容),所以我們可以在本地訪問它。

另一種解決方案是使用Goolge的訂閱API(或延伸部中的一個建立在這個API這樣的JQuery擴展)。

我的問題很簡單?爲什麼這個Google Feed API可以工作,並且可以使用我們無法執行的手動腳本加載遠程XML?我在這裏錯過了什麼?

回答

1

Google Feeds API通過代理www.google.com/uds/something/something獲取Feed內容。

這是它在ASCII體系結構中的樣子。

yoursite.com       | 
[1] v ^[6]       | 
    v ^       | <-- Client 
Google Feeds API JS (on yoursite.com) | 
[2] v ^[5]       | 
----v----^---------------------------------------------------------------------- 
    v ^       | 
www.google.com/uds/GFeeds?..   | <-- Server (Proxy) 
[3] v ^[4]       |  
    v ^       | 
www.feed.com/..       | <-- Feed URL 
+0

然後,爲什麼我不能使用我的客戶端腳本來做到這一點,爲什麼如果您通常嘗試從遠程域打開XML文件,Firefox會給出拒絕訪問? – 2010-08-08 13:34:05