1

私はこれを見つけました:http://www.niwi.be/post/django-sse-html5-server-sent-events-django/しかし、それは端がかなり荒いようで、バージョン0.2ではうまくいきません私はそれに自信を持っています。

SSE のサポートは厳密にはロケット科学ではないことを知っているので、必要ないだけかもしれませんが、他のプロジェクトやモジュールが役立つかどうかを誰かが知っているかどうかを確認したいと思いました。

一般的に使用されるモジュールの提案、またはしっかりとした「自分でやる」タイプの回答を探しています。

4

2 に答える 2

0

サンプル Django SSE ビュー:

class SSEView(View):
def  dispatch(self, request):
    response = http.StreamingHttpResponse(streaming_content=self.iterator(request=request), content_type="text/event-stream")
    response['Cache-Control'] = 'no-cache'
    response['connection'] = 'keep-alive'
    return response

def iterator(self, request):
    """
    Yield unseen events (based on session timestamp)
    """
    user = request.user
    while True:
        user_ts = request.session.get("user_ts")    # Last seen
        sse = EVENT.find_one({
            "ts": {"$gt" : user_ts},                # New event, after last-seen
            "user_id": user._id},                   # Only requester's event
        })
        if not sse:
            time.sleep(random())
        else:
            yield sse
            request.session["user_ts"] = sse["ts"]  # Overwrite latest event time
于 2014-03-12T10:31:15.303 に答える