- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
网络类编程课程设计HTTP通信系统设计网络类编程课程设计HTTP通信系统设计
XX学院
网络类编程课程设计
题 目: HTTP通信系统设计
学 号:
姓 名:
指导老师:
2013年X月X 日
计算机科学与应用系网络工程教研室
目 录
TOC \o 1-3 \h \u 19607 第1章 HTTP通信系统设计基础 1
27388 1.1 HTTP通信系统设计基础知识 1
1426 1.2 HTTP服务器端 2
22444 1.2.1 HTTP代理服务器 2
12861 1.2.2 HTTP代理 3
19611 1.2.3 HTTP协议 3
26942 1.3 HTTP客户端 3
21076 第2章 HTTP通信体系结构与设计 3
4995 2.1 HTTP代理协议的体系结构 3
28243 2.2 逻辑设计 4
1980 2.2.1 服务器端程序流程图 4
28451 2.2.2 客户机端程序流程图 4
19068 第3章 程序源代码 7
15989 3.1 服务端源代码 7
24689 3.2 软件测试 11
4346 3.3 客户端窗口界面代码 11
19286 3.4 客户端源代码 15
18951 第4章 客户端程序运行 18
20371 第5章 程序流程图 21
22854 5.1 主程序流程图 21
20379 5.2 请求处理程序流程图 22
19202 5.3 核心代码 23
13198 5.3.1 主程序 23
18389 5.3.2 请求处理函数 23
18096 5.3.3 无法响应请求 24
26302 5.3.4 404响应 25
422 5.3.5 判断是否目录与文件 25
3304 5.3.6 列出目录信息 25
12194 5.3.7 判断文件类型 25
12458 5.3.8 执行CGI程序 26
3550 5.3.9 判断请求的是否是cgi程序 26
16777 5.3.10 返回请求的文件 26
16417 第6章 实验验证 27
17728 6.1 实验步骤 27
2585 6.2 实验截图 27
31262 6.3 实验结果 29
31949 第7章 测试的过程 29
4408 7.1 通信后台代码 31
128 7.2 服务器运行日志部分代码 38
26431 设计总结 40
9905 参考文献 40
PAGE
PAGE 1
第1章 HTTP通信系统设计基础
1.1 HTTP通信系统设计基础知识
1.1.1 socket相关知识 所谓socket通常也称作套接字,应用程序通常通过套接字向网络发出请求或者应答网络请求。 以J2SDK-1.3为例,Socket和ServerSocket类库位于java .net包中。ServerSocket用于服务器端,Socket是建立网络连接时使用的。在连接成功时,应用程序两端都会产生一个Socket实例,操作这个实例,完成所需的会话。对于一个网络连接来说,套接字是平等的,并没有差别,不因为在服务器端或在客户端而产生不同级别。不管是Socket还是ServerSocket它们的工作都是通过SocketImpl类及其子类完成的。 1.1.2 Socket API 重要的Socket API:java .net.Socket继承于java.lang.Object,有八个构造器,其方法并不多,下面介绍使用最频繁的三个方法,其它方法大家可以见JDK-1.3文档。 Accept方法用于产生阻塞,直到接受到一个连接,并且返回一个客户端的Socket对象实例。阻塞是一个术语,它使程序运行暂时停留在这个地方,直到一个会话产生,然后程序继续;通常阻塞是由循环产生的。 getInputStream方法获得网络连接输入,同时返回一个InputStream对象实例。 getOutputStream方法连接的另一端将得到输入,同时返回一个OutputStream对象实例。 注意:其中getInputStream和getOutputStream方法均可能会产生一个IOException,它必须被捕获,因为它们返回的流对象,通常都会被另一个流对象使用。
1.1.3 常用的Socket类型 有两种:流式Socket(SOCK_STREAM)和数据报式Socket(SOCK_DGRAM)。
文档评论(0)