使用Python的Django和layim实现即时通讯的方法
作者:喝了鹤顶红的我 发布时间:2022-05-29 00:41:33
标签:Django,layim,即时通讯
看到Django和layim实现websocketde资料很少,自己就琢磨了下,顺便搭建出来了。自己要去找闲心大神授权呀。
先来看图
这是初次搭建的,今天一天就搞定。我自己接入了图灵机器人。
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>
我这里后台是直接将图灵机器人的回复发送到前台,就是这边就是只要解析一下就行
这样就可以基本实现。
来源:http://www.cnblogs.com/xbjss/p/9082810.html
0
投稿
猜你喜欢
- 二叉树中和为某一值的路径:输入一颗二叉树的跟节点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径。路径定义为从树的根结点开始往下一直
- <HTML> <BODY> <
- 内容摘要:在本人上一篇教程《彻底弄懂CSS盒子模式五(定位强化练习) 》有讲到一个很酷的链接面板提示的实例制作,那时主要是用到di
- 本文实例讲述了Symfony2实现在controller中获取url的方法。分享给大家供大家参考,具体如下:// 假设当前URL地址是htt
- 没有使用动态语句直接报错 错误的 代码如下:alter proc testpapers as begin declare @tems nva
- 内容摘要:您是否想让您的网站有多种显示风格呢,本文介绍了如何使用CSS结合js实现动态更换页面皮肤风格。看了下面的介绍您就明白了如何实现了这
- 淘宝商城的 detail 页面“产品详情”部分是商家自定义区块,曾出现这样一个问题:推荐:css行高:line-height属性详解 <
- 与大多数可以面向对象的编程语言不一样, PHP 是同时支持面向过程和面向对象的编程方式, PHP 开发者可以在面向过程和面向对象二者中自由选
- 在ASP中,也能让XML发挥其优点。例如像.NET那样写一个XML配置文件,在程序中读取,或者将一些数据量不大又经常访问的数据写入到XML中
- 我们平常在网页上显示的字体最小一般是12PX,当小于10PX时,显示的效果就大打折扣了,因为中文默认的字体是宋体,当小于12PX时的效果如下
- 基于循环神经网络(RNN)的古诗生成器,具体内容如下之前在手机百度上看到有个“为你写诗”功能,能够随机生成古诗,当时感觉很酷炫= =在学习了
- 由于代码比较短,这里就不进行注释了代码如下:<% '当目标页面的包含文件即#include的页面里边存在respon
- 大家都知道连续的英文或数字能是容器被撑大,不能根据容器的大小自动换行,网页设计初学者可能不知道怎么处理,下面是CSS如何将他们换行的方法!对
- 前不久,ColourLovers.com公布了一项调查结果。他们发现,美国前100大网站的Logo,主要使用12种颜色。其中,采用蓝色的网站
- 很多朋友希望,我能把我做网站的一些流程及经验跟大家分享一下,最近刚好做一次内部培训,所以稍微整理了一下,这些只是针对网页初学者,具有一定平面
- 方法一 :这个是我在站长工具的查询页面使用的防止频繁查询,刷新页面的代码!下面函数的功能是3秒内查询页面即刷新了页面,超过2次就提示!sea
- 下面都是我收集的一些比较常用的正则表达式,因为平常可能在表单验证的时候,用到的比较多。特发出来,让各位朋友共同使用。呵呵。匹配中文字符的正则
- Q:Dreamweaver(简称DW)中如何输入空格?A:按下“Ctrl+Shift+空格键”或者在中
- //获取元素的样式值。 function getStyle(elem,name){ if(elem.style[name]){ return
- sysdate+(5/24/60/60) 在系统时间基础上延迟5秒 sysdate+5/24/60 在系统时间基础上延迟5分钟 sysdat