使用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 相关文章推荐
初步剖析C语言编程中的结构体
Jan 16 Python
Python字符串处理实例详解
May 18 Python
详解python中的文件与目录操作
Jul 11 Python
Python3+django2.0+apache2+ubuntu14部署网站上线的方法
Jul 07 Python
Python中时间datetime的处理与转换用法总结
Feb 18 Python
利用django+wechat-python-sdk 创建微信服务器接入的方法
Feb 20 Python
Python2和Python3的共存和切换使用
Apr 12 Python
python实现海螺图片的方法示例
May 12 Python
Python多线程Threading、子线程与守护线程实例详解
Mar 24 Python
python IP地址转整数
Nov 20 Python
教你如何使用Python下载B站视频的详细教程
Apr 29 Python
python爬虫之selenium库的安装及使用教程
May 23 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
PHP入门速成(2)
2006/10/09 PHP
PHP MemCached 高级缓存应用代码
2010/08/05 PHP
PHP投票系统防刷票判断流程分析
2012/02/04 PHP
PHP获取文件夹内文件数的方法
2015/03/12 PHP
php获取网页里所有图片并存入数组的方法
2015/04/06 PHP
PHP+jQuery+Ajax实现分页效果 jPaginate插件的应用
2015/10/09 PHP
PHP指定截取字符串中的中英文或数字字符的实例分享
2016/03/18 PHP
PHP反射机制原理与用法详解
2017/02/15 PHP
php提供实现反射的方法和实例代码
2019/09/17 PHP
尽可能写&quot;友好&quot;的&quot;Javascript&quot;代码
2007/01/09 Javascript
JS 密码强度验证(兼容IE,火狐,谷歌)
2010/03/15 Javascript
JSQL SQLProxy 的 php 版本代码
2010/05/05 Javascript
JavaScript将数组转换成CSV格式的方法
2015/03/19 Javascript
初探nodeJS
2017/01/24 NodeJs
angularjs性能优化的方法
2018/09/05 Javascript
js中获取URL参数的共用方法getRequest()方法实例详解
2018/10/24 Javascript
vue 重塑数组之修改数组指定index的值操作
2020/08/09 Javascript
python实现五子棋小游戏
2020/03/25 Python
Python识别快递条形码及Tesseract-OCR使用详解
2019/07/15 Python
python判断自身是否正在运行的方法
2019/08/08 Python
学习Django知识点分享
2019/09/11 Python
详解Python3迁移接口变化采坑记
2019/10/11 Python
django框架F&amp;Q 聚合与分组操作示例
2019/12/12 Python
python 实现保存最新的三份文件,其余的都删掉
2019/12/22 Python
python GUI库图形界面开发之PyQt5结合Qt Designer创建信号与槽的详细方法与实例
2020/03/08 Python
Monnier Freres中文官网:法国领先的奢侈品配饰在线零售商
2017/11/01 全球购物
荷兰的时尚市场:To Be Dressed
2019/05/06 全球购物
信息管理员岗位职责
2013/12/01 职场文书
综合实践教学反思
2014/01/31 职场文书
门前三包责任书
2014/04/15 职场文书
机械操作工岗位职责
2014/08/08 职场文书
食品安全演讲稿
2014/09/01 职场文书
2014年团员学习十八大思想汇报
2014/09/13 职场文书
升职自荐信范文
2015/03/27 职场文书
2015年小学数学教师个人工作总结
2015/05/25 职场文书
python之基数排序的实现
2021/07/26 Python