第1章 理解XMLWeb服务 1
1.1 什么是XMLWeb服务 1
1.2 XMLWeb服务的优势 1
1.3 XMLWeb服务的用途 3
1.4 XMLWeb服务中的主要协议 4
1.5 XMLWeb服务的实现 6
1.6 XMLWeb服务的使用 8
1.7 小结 8
第2章 在集成开发环境下开发第一个ASP.NETWeb服务 9
2.1 开始之前 9
2.2 新建ASP.NETWeb服务项目 10
2.3 查看ASP.NETWeb服务项目的内容 12
2.4 实现ASP.NETWeb服务 15
2.5 编译 23
2.6 测试 26
2.7 查看服务描述 28
2.8 部署 29
2.9 提供发现机制 32
2.10 小结 33
第3章 用.NET框架SDK开发ASP.NETWeb服务 35
3.1 准备工作 35
3.2 编写ASP.NETWeb服务 36
3.3 测试 37
3.4 动态编译 39
3.5 部署 40
3.6 支持发现 40
3.7 调试 42
3.8 小结 45
第4章 用HTTP-GET和HTTP-POST访问ASP.NETWeb服务 47
4.1 使用HTTP-GET访问 47
4.2 使用HTTP-POST方法访问 50
4.3 创建和使用代理 54
4.3.1 产生代理类 55
4.3.2 考察产生的代理类 56
4.3.3 使用HTTP-GET/HTTP-POST代理访问Web服务 62
4.4 小结 64
第5章 用SOAP访问ASP.NETWeb服务 65
5.1 关于SOAP 65
5.2 产生代理类 67
5.3 使用代理类 72
5.4 实例 72
5.5 小结 74
6.1 基本原理 75
第6章 ASP.NETWeb服务中的数据封送 75
6.2 支持的数据类型 80
6.3 定制数据封送 95
6.4 小结 101
第7章 使用SOAP标头 103
7.1 在服务器端定义和处置SOAP标头 103
7.2 生成处理SOAP标头的客户端 106
7.3 更改SOAP标头接收方 109
7.4 使用可选的SOAP标头 110
7.5 处理未知的SOAP标头 112
7.6 处理Web客户端要求的SOAP标头 117
7.7 处理在处理SOAP标头时发生的错误 119
7.8 小结 122
第8章 使用SOAP扩展 123
8.1 理解SOAP扩展 123
8.1.1 Web服务的生命周期 123
8.1.2 SOAP扩展的工作时机 124
8.1.3 使用SOAP扩展的基本步骤 125
8.2 实现SOAP扩展 125
8.2.1 保存对表示将来SOAP消息的Stream的引用 126
8.2.2 初始化SOAP扩展 127
8.2.3 处理SOAP消息 129
8.2.4 调用SOAP扩展方法的顺序 131
8.3 配置SOAP扩展 132
8.3.1 利用配置文件 133
8.3.2 使用自定义特性 134
8.4 示例 136
8.5 小结 146
第9章 异步调用Web服务 147
9.1 理解异步调用 147
9.1.1 回调技术 147
9.1.2 同步 149
9.2 Web服务异步调用接口 150
9.2.1 BeginHello方法 151
9.2.2 EndHello方法 152
9.3 Web服务方法异步调用的几种方法 153
9.3.1 使用回调 153
9.3.2 轮询完成 155
9.3.3 开始调用,结束调用 157
9.3.4 开始调用,等待处理,结束调用 158
9.4 小结 160
第10章 创建分析Web页内容的Web服务 161
10.1 理解WSDL 161
10.2 指定输入参数 166
10.3.1 预备知识:正则表达式 167
10.3 指定从分析的HTML页返回的数据 167
10.3.2 步骤 168
10.4 实例 168
10.5 小结 173
第11章 ASP.NETWeb服务的安全性 175
11.1 基本原理 175
11.2 基于Windows的身份验证 180
11.2.1 准备 180
11.2.2 集成Windows验证 183
11.2.3 基本验证方式 184
11.2.4 模拟 186
11.2.5 授权 194
11.2.6 考虑安全性后的客户端 195
11.3 基于SOAP标头的自定义解决方案 197
11.3.2 方案的实施 199
11.4 自定义基于Windows的身份验证 214
11.5 代码级别的访问安全 219
11.6 小结 222
第12章 使用ASP.NET内部对象 225
12.1 概述 225
12.2 使用Application 226
12.3 使用会话 231
12.4 使用Server对象 240
12.5 使用缓存对象 242
12.6 小结 254
第13章 使用事务 255
13.1 事务的基本概念 255
13.2 ASP.NETWeb服务中的事务 256
13.3 实例 257
13.4 小结 265
14.1 理解远程处理 267
14.1.1 什么是远程处理 267
第14章 开发基于远程处理框架的Web服务 267
14.1.2 什么是远程处理框架 268
14.1.3 远程处理的过程 268
14.1.4 远程对象 269
14.1.5 远程处理中的数据封送 271
14.2 基于远程处理的Web服务的开发步骤 272
14.2.1 实现若干个提供Web服务的远程处理类 272
14.2.2 把远程对象发布为Web服务 275
14.2.3 支持发现 277
14.2.4 客户端通过代理访问基于远程处理的Web服务 277
14.2.5 实例 279
14.3 控制生存期 285
14.3.1 基于租约的生存期管理 285
14.3.2 实例 286
14.4 数据封送 297
14.4.1 概述 297
14.4.2 返回值 298
11.3.1 HTTP模块和ASP.NET基础结构 298
14.4.3 传入参数 310
14.5.1 基本概念 318
14.5 处理错误 318
14.5.2 实例 319
14.6 安全性 324
14.7 小结 332
第15章 用C++托管扩展开发Web服务 333
15.1 C++托管扩展简介 333
15.1.1 添加对程序集的引用 333
15.1.2 引入和声明命名空间 334
15.1.3 使用托管类型 334
15.1.4 声明托管类型 336
15.1.6 编译和运行 340
15.1.5 应用特性 340
15.1.7 实例 341
15.2 开发ASP.NETWeb服务 343
15.2.1 服务器端 343
15.2.2 测试 348
15.2.3 客户端 350
15.3 开发基于远程处理的Web服务 354
15.3.1 实现基于远程处理的Web服务 354
15.3.2 实现用户 356
15.4 小结 358
16.1.1 基本结构 359
16.1 概述 359
第16章 用ATLServer开发Web服务 359
16.1.2 开发步骤 360
16.1.3 客户端 360
16.1.4 实例 361
16.2 数据封送 370
16.2.1 概述 370
16.2.2 实例 372
16.3 使用SOAP标头 387
16.3.1 基本步骤 387
16.3.2 实例 387
16.4小结 392