目 录
第1章 Internet、异步、多用户 1
第2章 HTTP:客户端即上帝 5
2.1 HTTP操作 5
2.2 轮询 7
2.3 推送:服务器采取主动 8
2.3.1 WebSocket 9
2.3.2 Server-Sent Events(API Event Source) 10
2.3.3 如今的推送方式 11
2.3.4 我们需要的不仅是推送 14
第3章 SignalR概述 17
3.1 SignalR的作用 18
3.2 两个抽象层 19
3.3 支撑平台 20
3.4 OWIN和Katana:新来者 21
3.5 安装SignalR 24
第4章 持久连接 27
4.1 服务器端上的实现 28
4.1.1 映射并配置持久连接 28
4.1.2 持久连接事件 30
4.1.3 给客户端发送消息 32
4.1.4 异步事件处理 35
4.1.5 连接组 35
4.1.6 OWIN Startup类 37
4.2 客户端实现 39
4.2.1 使用JavaScript客户端初始化连接 39
4.2.2 支持老式浏览器 41
4.2.3 支持跨域连接 41
4.2.4 发送消息 43
4.2.5 接收消息 45
4.2.6 给服务器发送其他信息 46
4.2.7 客户端上的其他可用事件 47
4.3 传输协商 48
4.4 调整SignalR配置参数 49
4.5 完整示例:跟踪访问者 51
4.5.1 项目创建和设置 52
4.5.2 客户端实现 52
4.5.3 服务器端实现(TrackerConnection.cs) 54
第5章 Hub 55
5.1 服务器实现 56
5.1.1 Hub的注册和配置 56
5.1.2 创建Hub 57
5.1.3 接收消息 58
5.1.4 给客户端发送消息 62
5.1.5 给特定用户发送消息 66
5.1.6 状态维护 68
5.1.7 访问与请求上下文有关的信息 69
5.1.8 连接和断开连接通知 70
5.1.9 管理组 71
5.1.10 维护服务器状态 71
5.2 客户端实现 76
5.2.1 JavaScript客户端 76
5.2.2 生成代理 77
5.2.3 手动生成JavaScript代理 79
5.2.4 建立连接 81
5.2.5 给服务器发送消息 83
5.2.6 发送附加信息 87
5.2.7 接收服务器发来的消息 88
5.2.8 日志记录 89
5.2.9 状态维护 90
5.2.10 不具有代理的客户端实现 91
5.3 完整示例:共享画板 94
5.3.1 项目创建和设置 95
5.3.2 客户端上的实现 95
5.3.3 服务端上的实现 98
第6章 持久连接和其他线程的Hub 101
6.1 从其他线程访问 101
6.1.1 使用持久连接从外部进行访问 102
6.1.2 完整示例:在服务器上监视连接 104
6.1.3 项目创建和设置 105
6.1.4 站点实现 105
6.1.5 用于跟踪请求的系统(服务器端) 106
6.1.6 用于跟踪请求的系统(客户端) 109
6.2 使用Hub进行外部访问 109
6.2.1 完整示例:进度条 111
6.2.2 项目创建和设置 111
6.2.3 客户端实现 111
6.2.4 服务器端实现 113
第7章 实时多平台应用程序 115
7.1 多平台SingalR服务器 115
7.1.1 托管在非Web应用程序中的SignalR 115
7.1.2 非Windows平台中的SignalR托管 124
7.2 多平台SignalR客户端 127
7.2.1 从.NET非Web客户端访问服务 128
7.2.2 从其他平台访问服务 148
第8章 部署和扩展SignalR 151
8.1 增长的烦恼 152
8.2 SignalR的扩展性 155
8.3 底板上的扩展 158
8.3.1 Windows Azure Service Bus 159
8.3.2 SQL Server 163
8.3.3 Redis 166
8.4 自定义底板 169
8.5 提高SignalR服务的性能 172
8.5.1 服务器配置 174
8.5.2 监视性能 175
第9章 高级主题 179
9.1 SignalR中的授权 179
9.1.1 持久连接中的访问控制 179
9.1.2 Hub中的访问控制 180
9.1.3 客户端身份验证 182
9.2 可扩展的框架 189
9.3 依赖注入 195
9.3.1 手动依赖注入 197
9.3.2 释放依赖项 199
9.3.3 反转控制容器 199
9.4 对SignalR进行单元测试 204
9.4.1 对Hub进行单元测试 210
9.4.2 对持久连接进行单元测试 216
9.5 在Hub中截获消息 219
9.6 与其他框架的集成 224
9.6.1 Web API 224
9.6.2 ASP.NET MVC 227
9.6.3 Knockout 228
9.6.4 AngularJS 231
· · · · · · (
收起)
0 有用 崩溃侠 2021-08-03 01:18:31
SignalR适用于前后端双工通信,有 持久连接 和 代理过程调用 两种模式,其本身不包含负载均衡和认证,但可以根据需要利用其他标准库实现。
0 有用 月光下的待宵草 2020-06-30 12:04:41
最近要用到SignalR,这个书名完美符合我的预想,兴冲冲去图书馆借了来,败兴而归。前言说的是给入门的人看,计算机技术讲究的是一个快速上手,前几章东拉西扯讲技术原理,后面实例一堆一堆代码,还没啥解释,给我整懵逼了。我需要的入门书是既像博客文章那样手把手开始,又更系统全面,而且能过渡到更深层次 ----------------------- 过了几个月,实际需要用SignalR技术的时候,发现这本书... 最近要用到SignalR,这个书名完美符合我的预想,兴冲冲去图书馆借了来,败兴而归。前言说的是给入门的人看,计算机技术讲究的是一个快速上手,前几章东拉西扯讲技术原理,后面实例一堆一堆代码,还没啥解释,给我整懵逼了。我需要的入门书是既像博客文章那样手把手开始,又更系统全面,而且能过渡到更深层次 ----------------------- 过了几个月,实际需要用SignalR技术的时候,发现这本书其实挺好的。不过需要你先到处找博客找其他人的一些代码做出一些简单功能,对于这个技术有一定了解,这个时候再去看书,有一种醍醐灌顶的感觉,你发现很多博客写的内容,其实就是他们对于官方文档、对这本书的理解,有些不明所以的操作你能发现背后的原理,目录结构也变得清晰明白。 这反而是一本真正手把手教你的书。 (展开)