Django配置websocket时的错误解决

基于移动群智感知的网络图谱构建系统需要手机app不断上传数据到服务器并把数据推到前端标记在百度地图上,由于众多手机向同一服务器发送数据,如果使用长轮询,则实时性差、延迟高且服务器的负载过大,而使用websocket则有更好的性能。

Django配置websocket的文章网络上有很多,可以参考:

1\][Django中使用WebSocket(channels)_django使用ws-CSDN博客文章浏览阅读356次。下载channels库和daphne库。_django使用ws![](https://file.jishuzhan.net/article/1753405835406479362/e9ebf92a3a99030928f6b16836a083cb.x-icon)https://blog.csdn.net/qq_46042132/article/details/130994781](https://blog.csdn.net/qq_46042132/article/details/130994781 "Django中使用WebSocket(channels)_django使用ws-CSDN博客") \[2\]39.[Django 实现WebSocket - cloud_wh - 博客园 (cnblogs.com)![icon-default.png?t=N7T8](https://file.jishuzhan.net/article/1753405835406479362/c9868f5524aa31bbc2ae673827f18730.webp)https://www.cnblogs.com/qingtianyu2015/p/17196676.html](https://www.cnblogs.com/qingtianyu2015/p/17196676.html "Django 实现WebSocket - cloud_wh - 博客园 (cnblogs.com)")\[3\][【踩坑指南】Django+channels WebSocket配置_starting asgi/daphne version 4.0.0 development ser-CSDN博客![icon-default.png?t=N7T8](https://file.jishuzhan.net/article/1753405835406479362/c9868f5524aa31bbc2ae673827f18730.webp)https://blog.csdn.net/qq_25218219/article/details/131752459](https://blog.csdn.net/qq_25218219/article/details/131752459 "【踩坑指南】Django+channels WebSocket配置_starting asgi/daphne version 4.0.0 development ser-CSDN博客") \[4\][14-9 django中配置channels_哔哩哔哩_bilibili![icon-default.png?t=N7T8](https://file.jishuzhan.net/article/1753405835406479362/c9868f5524aa31bbc2ae673827f18730.webp)https://www.bilibili.com/video/BV18U4y1Y7Do?p=9\&vd_source=c71b91500f94df06bc5d49825b8d6d17](https://www.bilibili.com/video/BV18U4y1Y7Do?p=9&vd_source=c71b91500f94df06bc5d49825b8d6d17 "14-9 django中配置channels_哔哩哔哩_bilibili") 然而我配置完后,运行报了这样的错误: ![](https://file.jishuzhan.net/article/1753405835406479362/0bed738c3f1745833bca09d9ce9a2153.webp) 我的代码配置都没有问题,所以我怀疑是python、Django、channels、daphne之间的兼容性发生了问题,我重新安装了django、channels、daphne,但是还是报了相同的错误。 把错误问了chatgpt,说是缺少Cryptography库的Rust扩展导致的。Cryptography库用于处理加密和密码学相关的操作。我重新卸载安装了Cryptography,在安装时报了这样一个错误: Installing collected packages: cryptography ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts. pyopenssl 23.0.0 requires cryptography<40,>=38.0.0, but you have cryptography 42.0.1 which is incompatible. Successfully installed cryptography-42.0.1 原因是安装的cryptography版本(42.0.1)与pyopenssl库的要求存在冲突,pyopenssl要求的cryptography版本应小于40,并且大于等于38。 我安装的是42.0.1版本,所以发生错误,我又把cryptography换成39.0.1版本,再次运行,websocket配置成功: ![](https://file.jishuzhan.net/article/1753405835406479362/ea4f6cd6fb663955d3a814ac9a6f011a.webp)

相关推荐
2501_9159184122 分钟前
HTTPS 端口号详解 443 端口作用、iOS 抓包方法、常见 HTTPS 抓包工具与网络调试实践
android·网络·ios·小程序·https·uni-app·iphone
qq_3597162322 分钟前
UDP的使用
网络·网络协议·udp
2301_780789663 小时前
渗透测试真的能发现系统漏洞吗
服务器·网络·安全·web安全·网络安全
天天开心a3 小时前
华为HCIP-Datacom-Core Technology H12-831 书籍目录
网络·华为
Davie_Liu3 小时前
【Docker Buildx】docker buildx本地构建多架构镜像,拉取镜像时的网络延迟问题(已解决)
网络·docker·buildx
提笔忘字的帝国4 小时前
宝塔SSL自动续签
网络·网络协议·ssl
上海云盾商务经理杨杨4 小时前
高防IP如何抵御CC攻击?2025年全面防护机制解析
网络·网络协议·tcp/ip·网络安全
李白你好4 小时前
Ping命令为何选择ICMP而非TCP/UDP?
网络协议·tcp/ip·udp
青草地溪水旁5 小时前
网络包如何经过互联网接入路由器进入互联网内部?
网络·网络编程‘
yb0os15 小时前
RPC实战和核心原理学习(一)----基础
java·开发语言·网络·数据结构·学习·计算机·rpc