ASP.NET SingalR + MongoDB 实现简单聊天室(三):实现用户群聊,总结完善
前两篇已经介绍的差不多了,本篇就作为收尾。
- 使用hub方法初始化聊天室的基本步骤和注意事项
- 首先确保页面已经引用了jquery和singalR.js还有对应的hubs文件,注意,MVC框架有时会将jquery放在页面最底部,导致$符号将singalR覆盖的情况。
- 第二,配置服务地址的时候,如果没加配置,默认为 singalr/hubs
- 连接服务器流程
- 指定hub的url
- 定义聊天室代理类
- start聊天室
//1.注册聊天室服务器Url
$.connection.hub.url = 'http://localhost:40716/push/im';
//2.聊天室代理类
var proxy = $.connection.zjHub;
//3.初始化聊天室固定写法
$.connection.hub.start({ jsonp: true }).done(function () {
console.log("连接服务器成功");
//调用join方法,实现当前用户加入信息推送
proxy.server.join({
photo: user.userphoto,
username: user.username
});
}).fail(function () { console.log("聊天室初始化失败!"); });
- 部分代码解析,HubConfiguation还有另外两个配置参数,EnableDetailedErrors, 确定是否将集线器方法中引发的详细异常报告回调用客户端。默认为 false。EnableJavaScriptProxies,确定是否应在 {路径}/hubs 自动生成用于服务器端集线器的 JavaScript 代理。默认为 true。所以,看到这里,/hubs,就是生成的代理类.
- 源代码不是整个Demo是不能直接运行的。不过基本代码已经包含,下载之后放在项目里简单配置一下就可以使用了。注意去除掉 mongodb的数据操作部分就可以了。(mongodb不做介绍。。。)
源代码云盘地址:http://pan.baidu.com/s/1ntzqxL3
总结:整个聊天室总体来说比较简单,SingalR应用场景其实可以很多,除了聊天室、消息推送、通知之类的都可以。这只是基本功能。以后有机会还会扩充其他高级功能。聊天室系列完
ASP.NET SingalR + MongoDB 实现简单聊天室(三):实现用户群聊,总结完善的更多相关文章
- ASP.NET SingalR + MongoDB 实现简单聊天室(一):搭建基本框架
ASP.NET SingalR不多介绍.让我介绍不如看官网,我这里就是直接上源代码,当然代码还是写的比较简单的,考虑的也少,希望各位技友多多提意见. 先简单介绍聊天室功能: 用户加入聊天室,自动给用户 ...
- ASP.NET SingalR + MongoDB 实现简单聊天室(二):实现用户信息、聊天室初始化,聊天信息展示完善
第一篇已经介绍了一大半了,下面就是详细业务了,其实业务部分要注意的地方有几个,剩下的就是js跟html互动处理. 首先在强调一下,页面上不可缺少的js:jquery,singalR.js,hubs . ...
- Asp.Net SignalR - 简单聊天室实现
简单聊天室 使用持久链接类我们就可以做一些即时通讯的应用了,我使用Group做了一个简单的聊天室,先上图技术细节下面再讲 可以加入聊天室.创建聊天室.发送消息,下面就说说我是如何通过Group做出来的 ...
- SignalR学习笔记(一) 简单聊天室
什么是ASP.NET SignalR? ASP.NET SignalR是一个方便程序员添加实时网络通信功能的类库.所谓的实时网络通信功能(Real-time Web Functionality)就是需 ...
- C#实例之简单聊天室(状态管理)
前言 状态管理是在同一页或不同页的多个请求发生时,维护状态和页信息的过程.因为Web应用程序的通信协议使用了无状态的HTTP协议,所以当客户端请求页面时,ASP.NET服务器端都会重新生 ...
- 基于Server-Sent Event的简单聊天室 Web 2.0时代,即时通信已经成为必不可少的网站功能,那实现Web即时通信的机制有哪些呢?在这门项目课中我们将一一介绍。最后我们将会实现一个基于Server-Sent Event和Flask简单的在线聊天室。
基于Server-Sent Event的简单聊天室 Web 2.0时代,即时通信已经成为必不可少的网站功能,那实现Web即时通信的机制有哪些呢?在这门项目课中我们将一一介绍.最后我们将会实现一个基于S ...
- Python Socket 简单聊天室2
上篇文章写了一个简单的单线程的一问一答的简单聊天室.这次我们使用SocketServer模块搭建一个多线程异步的聊天室. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ...
- Node.js+websocket+mongodb实现即时聊天室
ChatRoom Node.js+websocket+mongodb实现即时聊天室 A,nodejs简介:Node.js是一个可以让javascript运行在服务器端的平台,它可以让javascrip ...
- SpringBoot 搭建简单聊天室
SpringBoot 搭建简单聊天室(queue 点对点) 1.引用 SpringBoot 搭建 WebSocket 链接 https://www.cnblogs.com/yi1036943655/p ...
随机推荐
- Razor 将C#对象转换成Javascript对象, json还原被转码的字符 "·· HTML转义符
Razor 将C#对象转换成Javascript对象 在Razor中使用Json字符串,特殊字符被自动转义(如:\"->") @{ var jsonStr = Html.Ra ...
- js 对象数据观察者实现
var observer = function (originalData) { var newData = {}; newData.observer = {}; newData.$data = {} ...
- [android] 界面切换的简单动画
1. 新建个位移动画的xml文件 Activity中开启动画 使用AnimationUtils类加载动画资源文件 left_to_right.xml <?xml version="1. ...
- Java 基础(6)——关键字 & 标识符 & 转义字符
依然是基础的一天,看一看就好~ 关键字 之前就有说过关键字哦~ 注:关键字就是程序发明者规定的有特殊含义的单词. from Java基础(2) Java 中除了关键字以外还有暂时没有成为关键字的保留字 ...
- 二分查找——Python实现
一.排序思想 二分(折半)查找思想请参见:https://www.cnblogs.com/luomeng/p/10585291.html 二.python实现 def binarySearchDemo ...
- python--boto3 之 与dynamoDB 的基本交互,表的备份与恢复
最近因工作需要,研究了一下boto3中dynamoDB部分,略有心得,在此总结一下. 首先是boto3的安装,在装有python和pip的机器上,运行 sudo pip install boto3 官 ...
- javascript时间格式转换(今天,昨天,前天)
function transDate() { var $time =document.getElementById("share-time"); var date = $time. ...
- 盒模型的属性丶display显示丶浮动
一丶盒模型的属性(重要) 1.padding padding是标准文档流,父子之间调整位置 <!DOCTYPE html> <html> <head> <me ...
- redis 安装与php扩展
php-redis扩展下载地址:https://pecl.php.net/package/redis/2.2.7/windows 注意: php_igbinary-5.5-vc11-ts-x86- ...
- for 循环的时候 append() 是移动不是复制
使用for 的时候,append() 不是复制,而是移动,只有最后一个元素才真正的append() 到了 解决办法: 1. 使用字符串: 2.使用clone();