我已經看到了從跨域檢索rss(xmls)的服務器端代理解決方法。事實上,這非常question addressess我同樣的問題,但給出了一個不同的解決方案。通過Javascript檢索跨域RSS(xml)
我有一個約束不使用代理檢索RSS提要。因此,Google AJAX Feed API解決方案也不合格。是否存在針對此問題的客戶端專用解決方法。
JSONP是針對使用JSON輸出響應的請求的解決方案。但在這裏,我有RSS源,可以用純XML進行響應。
我該如何解決問題。
我已經看到了從跨域檢索rss(xmls)的服務器端代理解決方法。事實上,這非常question addressess我同樣的問題,但給出了一個不同的解決方案。通過Javascript檢索跨域RSS(xml)
我有一個約束不使用代理檢索RSS提要。因此,Google AJAX Feed API解決方案也不合格。是否存在針對此問題的客戶端專用解決方法。
JSONP是針對使用JSON輸出響應的請求的解決方案。但在這裏,我有RSS源,可以用純XML進行響應。
我該如何解決問題。
現在確實不存在跨平臺跨站腳本解決方案。你有控制或訪問的RSS提要?如果是這樣,爲什麼不直接用JSON響應並使用JSONP?
還有其他一些東西來自HTML5,如跨站點消息傳遞(稱爲跨文檔消息傳遞),可能能夠提供XML的有效載荷,但上次我檢查時,他們沒有甚至完全決定了消息的大小限制。
您可以在這裏看到的規格:http://dev.w3.org/html5/spec/Overview.html#crossDocumentMessages
要回答你的第一個問題,不,我沒有控制飼料。飼料無處不在! – Ajay 2009-12-03 06:14:42
他們是?! /諷刺。 ;)值得一提的是,你有機會控制你正在檢索的飼料。 – 2009-12-03 17:40:48
使用類似Yahoo! Pipes作爲代理和RSS XML轉換成JSON響應。
下面是一篇文章,其中包含說明和代碼示例,說明如何執行此操作:Yahoo Pipes--RSS without Server Side Scripts。
我能想到的唯一方法就是在網頁上嵌入一個簽名的java applet來檢索xml並使用javascript來與之交互。我甚至沒有100%確定目前的Java安全模型是什麼,但我認爲它會起作用。
如果您可以控制這兩個域,則可以嘗試一個跨域腳本庫,如EasyXDM,它涵蓋了跨瀏覽器的怪癖,並提供了一個易於使用的API,用於在不同域之間使用最佳方式在客戶端腳本中進行通信該瀏覽器的可用機制(例如,如果可用,則爲postMessage,否則爲其他機制)。注意:您需要對兩個域進行控制才能使其正常工作(其中「控制」意味着您可以在兩者上放置靜態文件)。但是您不需要任何服務器端代碼更改。
另一個警告:這裏有安全隱患 - 確保您信任其他域的腳本!
必須支持哪些瀏覽器和平臺? – 2009-12-13 13:43:28
所有主流瀏覽器: - IE 7+,Firefox 3+,Chrome .. – Ajay 2009-12-14 10:07:51