2010-05-26 202 views
0

我有一個python腳本(在CherryPy的框架)的文字與此Opera blog post描述到客戶端瀏覽器。接收x-dom事件流內容的JavaScript幾乎與他們在博客文章中顯示的相同。但是,瀏覽器僅顯示發送的第一個事件。任何人都知道我錯過了什麼?發送事件X-DOM事件流中戲10只工作一事件

我嘗試了一些舊版本的Opera,發現它的作品在Opera 9.52,但沒有任何新版本。他們改變了什麼?

這裏是Python代碼:

class dumpData(object): 
    def index(self): 
    cherrypy.response.headers['Content-Type'] = "application/x-dom-event-stream" 

    def yieldData(): 
     i = 0 
     while 1: 
     yield "Event: count\n" 
     yield "data: " 
     yield i 
     yield "\n\n" 
     i = i + 1 
     time.sleep(3); 

    return yieldData() 

index._cp_config = {'response.stream': True} 
index.exposed = True 

這裏是JavaScript/HTML。請求/ data /運行上面的python函數。

<head> 
    <script> 
    onload = function() { 
     document.getElementById("count").addEventListener("cout", cout, false); 
    } 
    function count(e) { 
     document.getElementById("stream").firstChild.nodeValue = e.data; 
    } 
    </script> 
    <event-source id="count" src="/data/"> 
</head> 
<body> 
    <div id="stream"></div> 
</body> 

在Firefox中打開direct/data/url將流保存到文件中。所以我知道輸出的格式是正確的,而且流可以工作。

回答

2

這是一個錯誤。對不起: -/

(備案:CORE-28592在Opera的不幸關閉的bug跟蹤器。)