flask总结之websocket源码剖析
Posted learningonline
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了flask总结之websocket源码剖析相关的知识,希望对你有一定的参考价值。
1.关于session的说明
flask是带有session的,它加密后存储在用户浏览器的cookie中,可以通过app.seesion_interface源码查看
2.关于websocket
它是一个协议,常与http对比,两者都是应用层协议。websocket主要解决了服务端向客户端推送消息(全双工)
http协议规定:一次请求一次响应,属于无状态短链接。http协议只能被动接受客户端给服务端发送的消息
之前该介绍链接:猛戳此处
websocket协议规定:
--握手:base64(sha1(key+magic key))
--收发数据(加密)
-127
-126
<=125
(经过以上三种字节大小判断对数据进行解密)
--持久连接
在三大框架中的使用:
flask中使用了werkzurg,它支持websocket(在新版本中),但是效果不是太好,我们可以使用geventwebsocket模块实现,它既支持http也支持websocket
django中默认socket使用的是wsgiref写的,它也不支持websocket,只支持http协议,但是我们可以使用channel组件实现
tornado中默认使用的是自己的socket,它既支持http协议也支持websocket协议
相关博客链接
以上是关于flask总结之websocket源码剖析的主要内容,如果未能解决你的问题,请参考以下文章