《ISAPI/NSAPI Web高级编程》求取 ⇩

致谢1

引言1

第一章HTTP1

1.1 背景1

译者序1

1.1.1HTTP0.93

1.1.2 HTTP1.03

1.1.3 HTTP1.14

1.1.4 HTTPng5

1.2 URL及其有关形式5

1.2.2 HTTP URL6

1.2.1 URL6

1.2.3 绝对URL和路径7

1.2.4 相对URL8

1.2.5 URL编码8

1.3 基本协议8

1.3.1 HTTP:一个无态、应用层协议9

1.3.2 TCP作为传输协议10

1.3.3HTTP:一个媒体无关、面向对象协议10

1.4 请求周期10

1.6 消息12

1.5 注意12

1.6.1 消息标题13

1.6.2 普通标题13

1.7 请求14

1.7.1 请求标题15

1.7.2 GET请求的例子16

1.8 响应17

1.8.1 状态码17

1.8.2 响应标题18

1.8.3 实体标题19

1.8.4 GET响应的例子22

1.9 请求方法23

1.9.1 GET23

1.9.2 HEAD24

1.9.3 POST24

1.9.4 PUT27

1.10 媒体类型27

1.10.1 通用媒体类型27

1.10.2 浏览器对媒体类型的解释29

1.10.3 浏览器plug-ins处理媒体类型30

1.11 HTTP与MIME的关系30

1.11.1 访问认证31

1.11.2 基本认证方法32

1.11.3 BASE64编码34

1.11.4 摘要认证(Digest Authentication)36

1.12 小结36

第二章Web Server 技术38

2.1 典型Web Server结构40

2.1.1 Server操作41

2.1.2 Web Server的实现42

2.2 通用网关接口(CGI)43

2.2.1 CGI环境变量44

2.2.2 CGI URL45

2.2.3 CGI的输入46

2.2.4 CGI的输出47

2.3 进程内(In-Process)扩充47

2.4 CGI和进程内扩充的比较48

2.5 Fast CGI49

2.6 Netscape Plug-in50

2.7 Microsoft ISAPI过滤器和ISA扩充51

2.7.1 ISA扩充51

2.7.2 ISAPI过滤器52

2.8 小结53

第三章Netscape Server API54

3.1 Netscape Server结构54

3.1.1 UNIX54

3.1.2 Windows NT56

3.1.3 请求是如何处理的58

3.1.4 请求处理顺序58

3.2 配置文件60

3.2.1 Server配置文件:magnus.conf60

3.2.2 对象配置文件:obj.conf62

3.2.3 mime.types文件66

3.3 小结67

第四章NSAPI扩充函数基础68

4.1 NSAPI包含的文件68

4.2 NSAPI的存储管理68

4.2.1 分配临时空间69

4.2.2 分配永久存储空间70

4.3 Pblock结构70

4.3.1 pblock_find71

4.3.2 pblock_findval71

4.3.3 pblock_pblockzstr72

4.3.4 pblock_nvinsert/pblock_nninsert72

4.4 Session结构73

4.3.5 pblock_remove73

4.4.1 netbuf结构75

4.4.2 netbuf函数75

4.4.3 文件描述符和文件缓冲区76

4.4.4 文件描述符和文件操作函数76

4.4.5 文件缓冲区及其操作79

4.5 Request结构81

4.5.1 Request.vars的含义82

4.5.3 Request.headers含义83

4.5.2 Request.reqpb的含义83

4.5.4 Request.srvhdrs含义84

4.5.5 Request其他成员85

4.6 小结85

第五章Server扩充86

5.1 设计和实现86

5.1.1 性能86

5.1.2 存储器的使用87

5.1.3 全局资源88

5.2 线程及其安全性88

5.2.1 线程88

5.2.2 线程安全性89

5.3 线程安全技术90

5.4 NSAPI提供的锁机制91

5.5 ISAPI的锁92

5.6 优化线程安全性的注意事项93

5.7 勿需考虑的方面93

5.8 开发共享对象93

5.9 调试Server扩充94

5.10 小结95

6.1.3 包含文件96

6.1.5 重要的Request结构成员96

6.1.4 重要的Session结构成员96

6.1.1 表示形式96

6.1.2 含义96

6.1 初始化函数96

第六章设计NSAPI扩充函数96

6.1.6 定义pblock变量97

6.1.7 初始化扩充的返回码97

6.1.8 初始化函数的配置97

6.1.9 初始化函数的例子98

6.1.10 关键特征101

6.2.1 表示形式102

6.2.2 含义102

6.2 认证函数102

6.2.3 包含文件103

6.2.4 重要的Session结构成员103

6.2.5 重要的Request结构成员103

6.2.6 定义pblock变量104

6.2.7 认证扩充的返回码104

6.2.8 认证事件的配置104

6.2.9 普通认证函数105

6.3 完整的认证函数109

6.3.1 关键特征116

6.4 名字转换函数119

6.4.1 形式描述119

6.4.2 含义120

6.4.3 包含文件120

6.4.4 重要的Session结构成员120

6.4.5 重要的Request结构成员120

6.4.6 定义的pblock变量120

6.4.7 名字转换扩充返回码121

6.4.8 名字转换事件的配置121

6.4.9 简单的名字转换函数122

6.5 路径检查函数126

6.4.10 关键特征126

6.5.1 形式描述127

6.5.2 含义127

6.5.3 包含文件127

6.5.4 重要的Session结构成员127

6.5.5 重要的Request结构成员127

6.5.6 定义pblock变量128

6.5.7 路径检查扩充的返回码128

6.5.8 路径检查事件的配置128

6.5.9 简单的路径检查函数129

6.6.1 形式表示133

6.6.2 含义133

6.6 对象类型函数133

6.5.10 关键特征133

6.6.3 包含文件134

6.6.4 重要的Session结构成员134

6.6.5 重要的Request结构成员134

6.6.6 定义pblock变量135

6.6.7 对象类扩充返回码135

6.6.8 对象类型事件配置135

6.6.9 一个简单的对象类型函数136

6.6.10 关键特征137

6.7.2 含义138

6.7 Service类函数138

6.7.1 描述形式138

6.7.3 包含文件139

6.7.4 重要的Session结构成员140

6.7.5 重要的Request结构成员140

6.7.6 定义pblock变量141

6.7.7 服务扩充返回码141

6.7.8 服务事件的配置141

6.7.9 一个非交互式服务扩充142

6.7.10 一个数据库驱动的服务扩充146

6.8 增加记录的函数165

6.7.11 关键特征165

6.8.1 表示形式166

6.8.2 含义166

6.8.3 包含文件166

6.8.4 重要的Session结构成员166

6.8.5 重要的Request结构成员166

6.8.6 pblock变量的定义166

6.8.7 增加记录扩充返回码166

6.8.8 本事件的配置167

6.8.9 AddLog函数例子168

6.9 小结170

6.8.10 关键特征170

7.1 Windows NT服务171

7.2 IIS结构171

第七章Microsoft IIS和ISAPI171

7.2.1 IIS配置173

7.2.2 IIS认证174

7.3 ISA175

7.3.1 ISA是如何工作的?175

7.3.2 如何集成ISA和IIS176

7.3.3 ISA是CGI的一种替代方法177

7.5 ISAPI过滤器179

7.5.1 过滤器是如何工作的?179

7.4 ISA的配置179

7.4.2 注册访问179

7.4.1 注册目录179

7.5.2 请求处理顺序180

7.5.3 和IIS通信181

7.6 过滤器的配置182

7.6.1 访问权限182

7.7 小结182

8.1.1 GetExtensionVersion184

第八章ISA应用基础184

8.1 ISA的DLL入口点184

8.1.2 HttpExtensionProc185

8.1.3 TerminateExtension187

8.2 ECB是什么188

8.2.1 Get Server Variable188

8.2.2 Read Client192

8.2.3 WriteClient193

8.2.4 ServerSupportFunction195

8.3 小结198

9.2 决定过滤器的优先级199

9.1 请求事件通知199

第九章ISAPI过滤器基础199

9.3 ISAPI过滤器的DLL入口点200

9.3.1 GetFilterVersion200

9.3.2 HttpFilterProc203

9.3.3 GetServerVariable207

9.3.4 AddResponseHeaders208

9.3.5 WriteClient209

9.3.6 ServerSupportFunction211

9.3.7 AllocMem213

9.4.1 安全端口——SF_NOTIFY_SECURE_PORT215

9.4 事件215

9.4.2 非安全端口——SF_NOTIFY_NONSECURE_PORT216

9.4.3 事件——访问拒绝216

9.4.4 读原始数据——SF_NOTIFY_READ_RAW_DATA219

9.4.5 预处理标题——SF_NOTIFY_PREPROC_HEADERS221

9.4.6 认证——SF_NOTIFY_AUTHENTICATION224

9.4.7 URL映射——SF_NOTIFY_URL_MAP226

9.4.8 发送原始数据——SF_NOTIFY_SEND_RAW_DATA228

9.4.9 记录——SF_NOTIFY_LOG230

9.4.10 结束会话——SF_NOTIFY_END_OF_NET_SESSION232

9.5 小结233

第十章建立和开发ISA和ISAPI过滤器234

10.1 建立和开发一个ISA234

10.1.1 创建一个ISA——跟我学234

10.1.2 关键点240

10.1.3 CGI转换的有用注意事项241

10.1.4 查询服务器变量242

10.1.5 URL重定向246

10.1.6 用GET或POST处理注册表249

10.1.7 维护一个用户认证数据库258

10.2.1 创建一个过滤器——跟我学267

10.2 创建并设计一个过滤器267

10.2.2 要点277

10.2.3 记录过滤器278

10.2.4 认证过滤器284

10.2.5 对象连接器过滤器292

10.2.6 过滤器的一般错误321

10.3 更轻松、更安全的开发注意事项321

10.3.1 在服务器机器上开发321

10.3.2 使用调试版内存分配器321

10.3.5 保证ISA或过滤器线程安全322

10.3.3 用单独堆分配内存322

10.3.4 检查返回码322

10.4 ISA和过滤器调试技术323

10.4.1 禁止缓冲服务器扩充324

10.4.2 显示DLL的输出324

10.4.3 交互运行IIS325

10.4.4 IIS运行时附接调试器325

10.5 小结326

11.1 OO基本概念327

11.1.1 抽象327

第十一章面向对象概述327

11.1.2 封装328

11.1.3 层次329

11.1.4 多态性330

11.1.5 类型331

11.1.6 类与对象间的关系331

11.2 OOA、OOD和OOP331

11.3 面向对象框架332

11.3.5 纵向和横向框架333

11.3.4 黑匣子框架333

11.3.3 白匣子框架333

11.3.2 什么是框架333

11.3.1 类库333

11.3.6 应用和系统框架334

11.3.7 使用面向对象的优点334

11.4 小结335

第十二章Web Server扩充框架336

12.1 Server框架的用途336

12.1.1 可移植性336

12.1.2 通用代码基础336

12.1.4 简化扩充创建337

12.2 ISAPI与NSAPI基本比较337

12.1.3 单独模型337

12.3 SEREF339

12.3.1 OOPL的选择339

12.3.2 SEREF基本结构340

12.3.3 支持类341

12.3.4 相关性方法355

12.3.5 SEREF事件管理器359

12.4 可移植性369

12.4.1 提供系统服务370

12.5 小结375

第十三章SEREF事件模型377

13.1 事件层次377

13.1.1 SEREFEvent类377

13.2 HTTP认证事件381

13.2.1 普通的相关性转换方法382

13.2.2 增加一个认证事件句柄383

13.2.3 封装的基本行为384

13.2.4 实现例子386

13.3 API门和独立性388

13.3.1 SEREFUser类389

13.4.1 普通的相关性转换方法392

13.4 URL映射事件392

13.4.2 增加URL映射事件句柄395

13.4.3 封装的基本行为396

13.4.4 实现例子396

13.5 URL访问检测事件398

13.5.1 普通的相关性转换方法399

13.5.2 添加访问检测事件399

13.5.3 封装的基本行为400

13.5.4 实现例子400

13.6 服务事件401

13.6.1 普通相关性转换方法401

13.6.3 封装的基本行为407

13.6.2 增加服务事件句柄407

13.6.4 实现例子408

13.7 小结413

第十四章API-框架间的连接414

14.1 目标414

14.2 基本API的连接性414

14.3 回顾事件句柄注册415

14.4 特定的API代码416

14.4.1 Netscape NSAPI416

14.4.2 Microsoft ISAPI420

14.5 小结426

1999《ISAPI/NSAPI Web高级编程》由于是年代较久的资料都绝版了,几乎不可能购买到实物。如果大家为了学习确实需要,可向博主求助其电子版PDF文件(由(美)(T.贝弗里奇)Tony Beveridge,(美)( 1999 北京:中国水利水电出版社 出版的版本) 。对合法合规的求助,我会当即受理并将下载地址发送给你。

高度相关资料

C++高级编程技术(1994 PDF版)
C++高级编程技术
1994 北京:电子工业出版社
Visual C++ 6.0高级编程(1999 PDF版)
Visual C++ 6.0高级编程
1999
AutoCAD C语言高级编程(1995年 PDF版)
AutoCAD C语言高级编程
1995年 清华大学出版社
Microsoft Win32 高级编程教程( PDF版)
Microsoft Win32 高级编程教程
跟我学 A2 第十六课至第三十课(1981 PDF版)
跟我学 A2 第十六课至第三十课
1981
UNIX高级编程(1992 PDF版)
UNIX高级编程
1992 上海电子计算机厂科技服务部培训部
DBASE FOXBASE高级程序员编程指南(1993 PDF版)
DBASE FOXBASE高级程序员编程指南
1993 北京:石油工业出版社
Visual J++与Web编程(1998 PDF版)
Visual J++与Web编程
1998 北京:宇航出版社
动态Web应用高级开发指南 ASP、ADO和DHTML编程(1999 PDF版)
动态Web应用高级开发指南 ASP、ADO和DHTML编程
1999 北京:人民邮电出版社
中文Visual Basic 6.0高级编程(1999 PDF版)
中文Visual Basic 6.0高级编程
1999 北京:清华大学出版社
高级Windows编程技术(1999 PDF版)
高级Windows编程技术
1999 西安:西安交通大学出版社
DOS6.x高级编程(1996 PDF版)
DOS6.x高级编程
1996 北京:人民邮电出版社
Visual Basic 6.0高级编程技巧(1999 PDF版)
Visual Basic 6.0高级编程技巧
1999 北京:电子工业出版社
Java高级编程(1997 PDF版)
Java高级编程
1997 北京:电子工业出版社
UNIX高级编程技术(1994 PDF版)
UNIX高级编程技术
1994 上海:上海科学技术文献出版社