Flask and Gevent Websocket Mashup
Simplest example of Flask and Gevent Websocket used together.
from flask import Flask from geventwebsocket import WebSocketServer, WebSocketApplication, Resource app = Flask(__name__) class echo(WebSocketApplication): def on_message(self, message): self.ws.send(message) @app.route('/') def hello(): return """<!DOCTYPE html> <html> <head> <script> window.onload = function() { var ws = new WebSocket("ws://localhost:8080/echo"); ws.onmessage = function(evt) { var data = evt.data; var el = document.getElementById('response'); el.innerHTML += '<li>' + data + '</li>'; }; var el = document.getElementById('message'); el.onkeypress = function (evt) { if (evt.which == 13) { ws.send(el.value); el.value = ''; } }; }; </script> </head> <body> <h1>Echo Example</h1> <p>Type a message and press enter.</p> <input id="message" type="text"></input> <ol id="response"> <li>Responses show here.</li> </ol> </body> </html>""" routes = {'/': app, '/echo': echo} server = WebSocketServer(('', 8080), Resource(routes), debug=True) server.serve_forever()