当前位置: 首页 > news >正文

Django配置websocket时的错误解决

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

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

[1]Django中使用WebSocket(channels)_django使用ws-CSDN博客文章浏览阅读356次。下载channels库和daphne库。_django使用wshttps://blog.csdn.net/qq_46042132/article/details/130994781

[2]39.Django 实现WebSocket - cloud_wh - 博客园 (cnblogs.com)icon-default.png?t=N7T8https://www.cnblogs.com/qingtianyu2015/p/17196676.html[3]【踩坑指南】Django+channels WebSocket配置_starting asgi/daphne version 4.0.0 development ser-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/qq_25218219/article/details/131752459

[4]14-9 django中配置channels_哔哩哔哩_bilibiliicon-default.png?t=N7T8https://www.bilibili.com/video/BV18U4y1Y7Do?p=9&vd_source=c71b91500f94df06bc5d49825b8d6d17 

然而我配置完后,运行报了这样的错误:

 我的代码配置都没有问题,所以我怀疑是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配置成功:

 

http://www.lryc.cn/news/290417.html

相关文章:

  • (免费分享)springboot,vue在线考试系统
  • WebSocket 整合 记录用法
  • 推荐5个我常用的软件,简单高效
  • 代码随想录训练营第三十一天|122.买卖股票的最佳时机II55.跳跃游戏45.跳跃游戏II
  • python17-Python的字符串格式化
  • HTTPS 之fiddler抓包--jmeter请求
  • Kotlin快速入门系列6
  • w24文件上传之PHP伪协议
  • SQL注入攻击 - 基于时间的盲注
  • 比VS Code快得多
  • 将一个excel文件里面具有相同参数的行提取后存入新的excel
  • Linux下安装edge
  • Java / Spring Boot + POI 给 Word 添加水印
  • Unity打包Android,jar文件无法解析的问题
  • postman之接口参数签名(js接口HMAC-SHA256签名)
  • 从c到c++——6:auto
  • 前端面试题:字符串中字符出现的最多次数
  • 获取鼠标点击图片时候的坐标,以及利用html 中的useMap 和area 实现图片固定位置的点击事件
  • webassembly003 TTS BARK.CPP
  • HiveSQL题——排序函数(row_number/rank/dense_rank)
  • 【C语言】(9)分支结构
  • Flink 集成 Debezium Confluent Avro ( format=debezium-avro-confluent )
  • R语言(数据导入,清洗,可视化,特征工程,建模)
  • springboot 整合 Activiti6
  • 微信小程序canvas画布实现直线自由缩放、移动功能
  • Cesium数据加载
  • 【C++历练之路】探秘C++三大利器之一——多态
  • 业务逐字稿
  • 微服务舞台上的“三步曲“:Spring Cloud 服务注册、服务发现与服务调用
  • 中间件