使用Python的Django和layim实现即时通讯的方法


Posted in Python onMay 25, 2018

看到Django和layim实现websocketde资料很少,自己就琢磨了下,顺便搭建出来了。自己要去找闲心大神授权呀。

先来看图

使用Python的Django和layim实现即时通讯的方法

这是初次搭建的,今天一天就搞定。我自己接入了图灵机器人。

Python这需要安装Django和dwebsocket,安装之后现在Django的settings里面将WEBSOCKET_ACCEPT_ALL=True写进去

@require_websocketdef send(request):
  for message in request.websocket:
  request.websocket.send(这里要String类型) # 发送消息到客户端12345

这段代码是后台接受即时消息的,需要有注解。

看一下前段js

<!doctype html>
<html>
<head>
  <meta charset="utf-8">
  <title>LayIM测试</title>
  <link rel="stylesheet" href="../static/layui/css/layui.css" rel="external nofollow" media="all"></head><body><script src="../static/layui/layui.js"></script><script>
  layui.use('layim', function (layim) {
    var socket = new WebSocket('ws://localhost:8000/send');
    layim.config({
      init: {
        url: "/main",
        type: "get",
        data: {}
      },
      members: {
        url: "",
        type: 'post',
        data: {id: 1},
      }, isAudio: true
      , isVideo: true,
      right: "10px"
      //扩展工具栏
      , brief: false //是否简约模式(如果true则不显示主面板)

    });
    layim.on('sendMessage', function (res) {
      var mine = res.mine;
      socket.send(JSON.stringify({
        type: 'chatMessage' //随便定义,用于在服务端区分消息类型
        , data: res
      }));

    });
    socket.onmessage = function (res) {
      layim.getMessage({
        username: "图灵机器人"
        , avatar: "../static/img/100.jpg"
        , id: "1
        , type: "friend"
        , content: res.data
        , cid: 0
        , mine: false
        , fromid: "1"
      });
    };
  });
  </script>
</body>
</html>

我这里后台是直接将图灵机器人的回复发送到前台,就是这边就是只要解析一下就行

这样就可以基本实现。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
用python实现批量重命名文件的代码
May 25 Python
使用python实现省市三级菜单效果
Jan 20 Python
浅谈配置OpenCV3 + Python3的简易方法(macOS)
Apr 02 Python
Python实现的直接插入排序算法示例
Apr 29 Python
Python+OpenCV感兴趣区域ROI提取方法
Jan 10 Python
django-初始配置(纯手写)详解
Jul 30 Python
解决Python二维数组赋值问题
Nov 28 Python
python实现ssh及sftp功能(实例代码)
Mar 16 Python
Anconda环境下Vscode安装Python的方法详解
Mar 29 Python
tensorflow模型转ncnn的操作方式
May 25 Python
最简单的matplotlib安装教程(小白)
Jul 28 Python
python 经纬度求两点距离、三点面积操作
Jun 03 Python
matplotlib subplots 调整子图间矩的实例
May 25 #Python
Matplotlib 生成不同大小的subplots实例
May 25 #Python
python opencv3实现人脸识别(windows)
May 25 #Python
基于python3 OpenCV3实现静态图片人脸识别
May 25 #Python
matplotlib savefig 保存图片大小的实例
May 24 #Python
python3连接MySQL数据库实例详解
May 24 #Python
python实现图片文件批量重命名
Mar 23 #Python
You might like
echo, print, printf 和 sprintf 区别
2006/12/06 PHP
php 类自动载入的方法
2015/06/03 PHP
php获取小程序码的实现代码(B类接口)
2020/06/13 PHP
Javascript中的数学函数集合
2007/05/08 Javascript
关于延迟加载JavaScript
2015/05/05 Javascript
Webpack 实现 Node.js 代码热替换
2015/10/22 Javascript
详解JavaScript的变量和数据类型
2015/11/27 Javascript
利用jQuery实现CheckBox全选/全不选/反选的简单代码
2016/05/31 Javascript
JS实现iframe编辑器光标位置插入内容的方法(兼容IE和Firefox)
2016/06/24 Javascript
angular+ionic返回上一页并刷新页面
2017/08/08 Javascript
微信小程序如何获取用户信息
2018/01/26 Javascript
Vue实现带进度条的文件拖动上传功能
2018/02/23 Javascript
JS使用队列对数组排列,基数排序算法示例
2019/03/02 Javascript
Vue Render函数创建DOM节点代码实例
2020/07/08 Javascript
通过实例了解Nodejs模块系统及require机制
2020/07/16 NodeJs
[57:37]EG vs Mineski 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Python实现程序的单一实例用法分析
2015/06/03 Python
Python学习笔记整理3之输入输出、python eval函数
2015/12/14 Python
Python脚本处理空格的方法
2016/08/08 Python
Python工厂函数用法实例分析
2018/05/14 Python
浅谈Python爬虫基本套路
2019/03/25 Python
NumPy 数组使用大全
2019/04/25 Python
python实现图片上添加图片
2019/11/26 Python
TensorFlow实现保存训练模型为pd文件并恢复
2020/02/06 Python
使用python从三个角度解决josephus问题的方法
2020/03/27 Python
IRO美国官网:法国服装品牌
2018/03/06 全球购物
英国最大的在线蜡烛商店:Candles Direct
2019/03/26 全球购物
厨房工作人员岗位职责
2013/11/15 职场文书
项目合作计划书
2014/01/09 职场文书
质检部经理岗位职责
2014/02/19 职场文书
立志成才演讲稿
2014/09/04 职场文书
党性分析自查总结
2014/10/14 职场文书
面试复试通知单
2015/04/24 职场文书
婚庆主持词大全
2015/06/30 职场文书
CocosCreator如何实现划过的位置显示纹理
2021/04/14 Javascript
3050和2060哪个好 性能差多少 差距有多大 谁更有性价比
2022/06/17 数码科技