首页 > Web开发 > 详细

Websocket 简单对话:静态网页与pycharm对话

时间:2019-03-22 21:17:20      阅读:312      评论:0      收藏:0      [点我收藏+]

WebSocket  

websocket 是一种在单个Tcp连接上进行双全工通信的协议.websocket通信协议于2011年被IETF定为标准RFC6455,并

由RFc7936补充规范.WebSocket APL也被w3c定为标准

 

WebSocket使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据,在 WebSocket APL

中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输.

 

解释:       基于TCP的全双工通信协议

优点:       服务器可以主动传送数据给客户端

功能:     实现了浏览器与服务器双全工通信

 

简单聊天

首先我们要先安装Webscoket ,如果安装了就不用了

技术分享图片

其次创建一个py文件和一个html文件

技术分享图片
from flask import Flask,request

from geventwebsocket.handler import WebSocketHandler
from gevent.pywsgi import WSGIServer
from geventwebsocket.websocket import WebSocket

app = Flask(__name__)

@app.route("/conn_ws")
def ws_app():
    # print(request.environ)
    """
    wsgi.websocket:<geventwebsocket.websocket.WebSocket object at 0x0000000003Bc8528>
    :return:
    """
    user_socket = request.environ.get("wsgi.websocket")
    while True:

        msg =user_socket.receive()
        print(msg)
        user_socket.send(msg)

    #1 已经开启的websocket连接
    #3 开启了websocket连接 然后 断开了


    return "123"

if __name__ =="__main__":
    http_serv = WSGIServer(("0.0.0.0",9527),app,handler_class=WebSocketHandler)
    http_serv.serve_forever()
.py
技术分享图片
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<script type="application/javascript">
    var ws=new WebSocket("ws://127.0.0.1:9527/conn_ws");
    ws.onmessage =function (messageEvent) {
        console.log(messageEvent.data);
    }
</script>
</body>
</html>
.html

打开静态页面 ,打开

 

技术分享图片

 

 

技术分享图片

报错不用管 !!!!

 

Websocket 简单对话:静态网页与pycharm对话

原文:https://www.cnblogs.com/tianshuai1/p/10580848.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!