python 龙卷风的websocket样本

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 龙卷风的websocket样本相关的知识,希望对你有一定的参考价值。

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

import tornado.web
import tornado.ioloop
import tornado.websocket

INDEX_PAGE = '''
<!DOCTYPE HTML>
<html lang="zh-cn">

<head>
    <meta charset="UTF-8">
    <title>Tornado Websocket</title>
</head>
<script type="text/javascript">
    var ws;

    function onLoad() {
        ws = new WebSocket("ws://" + document.domain + "/ws");
        ws.onmessage = function(e) {
            alert(e.data)
        }
    }


    function sendMsg() {
        ws.send(document.getElementById('msg').value);
    }
</script>

<body onload='onLoad();'>
    Message to send: <input type="text" id="msg" />
    <input type="button" onclick="sendMsg();" value="发送" />
</body>

</html>
'''


class IndexPageHandler(tornado.web.RequestHandler):
    def get(self):
        # print(self.request.headers)
        self.write(INDEX_PAGE)


class WebSocketHandler(tornado.websocket.WebSocketHandler):
    def check_origin(self, origin):
        return True

    def open(self):
        pass

    def on_message(self, message):
        # print(self.request.headers)
        self.write_message(u"Your message was: " + message)

    def on_close(self):
        pass


if __name__ == '__main__':
    ws_app = tornado.web.Application([
        (r'/', IndexPageHandler),
        (r'/ws', WebSocketHandler)
    ])
    ws_app.listen(80)
    tornado.ioloop.IOLoop.current().start()

以上是关于python 龙卷风的websocket样本的主要内容,如果未能解决你的问题,请参考以下文章

python的Websocket库

HTTP 服务器外 Python3 的 Websocket 服务器

托管龙卷风/websocket 应用程序

完全停止线程龙卷风 WebSocket 服务器

带有 AssertionError 的龙卷风 websocket 崩溃

WebSocket 在烧瓶和龙卷风中的应用