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將流保存到文件中。所以我知道輸出的格式是正確的,而且流可以工作。