flask实现后台数据的实时显示

想要实现一个简单的功能:服务器通过socket不停地接收设备的坐标位置,然后需要实时地将该坐标位置显示到HTML地图页面上。

服务器接收设备坐标位置的程序已经由python实现。地图的html页面也由flask渲染好了,传一些固定的坐标值进去显示没问题。问题是怎么将两部分整合到一起,该怎么设计,本人刚涉及web的开发,谢谢!

阅读 20.2k
2 个回答

HTML5标准里有一个支持全双工通信的技术,叫WebSocket,也就是说可以由服务器高效率低消耗(相对于Comet技术之类的)地向浏览器推送数据,也可以由浏览器向服务器发送数据。

那么,在支持HTML5的浏览器上,你可以写一个js脚本,用WebSocket接受服务器发送的数据,在Python上,已经有Flask-SocketIO这种可以利用WebSocket的扩展了。

参见

你可以试试这个gevent-socketio.

gevent-socketio is a Python implementation of the Socket.IO protocol, developed originally for Node.js by LearnBoost and then ported to other languages. Socket.IO enables real-time web communications between a browser and a server, using a WebSocket-like API. One aim of this project is to provide a single gevent-based API that works across the different WSGI-based web frameworks out there (Pyramid, Pylons, Flask, web2py, Django, etc…).
https://pypi.python.org/pypi/gevent-socketio/

我尝试web2py + gevent-socketio。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏