
根據英國電訊報,世界新聞 RSS feed 應該是這樣的: http://www.telegraph.co.uk/news/worldnews/rss
然而,使用 Chrome 我只能得到一個空白頁面。
甚至wget http://www.telegraph.co.uk/news/worldnews/rss
給我丟了一個文件,裡面有一行:
<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet type='text/xsl' href='http://telegraph.feedsportal.com/xsl/eng/rss.xsl'?>
怎麼了?
答案1
如果您開啟 Chrome 瀏覽器控制台,ctrl + shift + j
當瀏覽器嘗試載入該頁面時,您會注意到以下錯誤訊息:
Unsafe attempt to load URL http://telegraph.feedsportal.com/xsl/eng/rss.xsl from frame with URL http://www.telegraph.co.uk/news/worldnews/rss. Domains, protocols and ports must match.
發生的情況是 RSS 提要嘗試載入 xsl 文件,這是網站在瀏覽器中很好地格式化其 RSS 提要的一種方式。但由於 Telegraph 將其 xsl 檔案託管在另一個網域上,因此瀏覽器安全性原則不會允許其載入。因為它無法載入 chrome,所以根本不顯示任何內容。這可以被認為是 Chrome 中的錯誤,如果 Chrome 無法載入 xsl,它實際上應該回退到其預設行為。
您可以查看 RSS 提要的源代碼,透過載入空白頁並按ctrl + u