Skip to content

Instantly share code, notes, and snippets.

@danielflira
Last active June 11, 2020 07:41
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save danielflira/2510e9acafc5119e030d98497dc7e1bb to your computer and use it in GitHub Desktop.
Save danielflira/2510e9acafc5119e030d98497dc7e1bb to your computer and use it in GitHub Desktop.
waitress and flask sse (server sent events) example
from flask import Flask, Response, url_for
from waitress import serve
from datetime import datetime
import time
import json
app = Flask(__name__)
@app.route('/sse')
def sse():
return '''
<html>
<head>
</head>
<body>
<div id="event"></div>
<script type="text/javascript">
var eventElement = document.getElementById("event");
var evtSource = new EventSource("/demosse");
evtSource.onmessage = function(e) {
eventElement.innerHTML = e.data;
}
</script>
</body>
</html>
'''
@app.route('/demosse')
def demosse():
def temp():
date = str(datetime.now())
print(date)
yield('data: %s\n\n' % date)
time.sleep(5)
return Response(temp(), mimetype="text/event-stream")
serve(app, port=10081)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment