2012-02-13 46 views
0

我想使用longpolling,如果websocket不可用。但是如何使它,如果服務器和網站不在同一個域中?如何使用來自不同域的長輪詢?

對不起,我的英語不好。如果你有任何想法,然後與我分享。

在此先感謝

+1

你有沒有試過失敗的東西?跨域長輪詢與跨域常規輪詢完全相同(除了請求需要多長時間),所以同樣的解決方案適用(CORS,JSONP等)。 – cheeken 2012-02-13 17:10:36

+0

是的,我試過了,但xmlhttp請求不起作用跨域:'未捕獲的異常:ReferenceError:安全違規' – 2012-02-13 17:13:58

+2

事實上,你不能跨域執行AJAX請求。您需要使用不同的方法,例如我提到的方法。我的觀點是,你的問題不是特定於長輪詢。見http://stackoverflow.com/questions/3506208/jquery-ajax-cross-domain – cheeken 2012-02-13 17:17:37

回答

2

丹尼,

現在(到跨域消息是更好的支持),您將需要利用動態腳本標記長輪詢方法,讓你動態腳本標記添加到dom而不是做傳統的ajax請求(例如:document.createElement(「script」))。您可以通過使用腳本成功加載時觸發的onreadystatechange事件來確定頁面是否已加載。