




已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
精品文档交流 软件开发设计文档软件开发设计文档 精品文档交流 文档管理信息表文档管理信息表 主题主题web 服务器 版本版本 1 0 内容内容可响应客户端发送文件请求的 web 服务器 关键字关键字套接字 请求报文 响应报文 tcp 编程 参考文档参考文档无 创建时间创建时间 2016 4 2 创建人创建人吴鑫 最新发布日期最新发布日期 2016 4 2 文档变更纪录文档变更纪录 更改人更改人日期日期更改内容更改内容 何鑫2016 4 4创建文件 精品文档交流 目目 录录 1开发规划开发规划 1 1 1开发人员 1 1 2开发计划 2 1 3开发环境和工具 3 1 4开发规范 3 2总体设计总体设计 4 2 1概念术语描述 4 2 1 12 1 1术语1 4 2 1 22 1 2术语2 4 2 3主要界面流程描述 7 2 3 12 3 1功能1界面流程 7 2 3 22 3 2功能2界面流程 7 2 4模块列表 8 3数据结构数据结构 9 4接口规范接口规范 10 4 1 10 4 1 14 1 1Interface1 10 4 1 24 1 2Interface2 10 4 2 11 4 3 11 4 4 11 5模块设计模块设计 12 5 1MODULE1 设计 12 5 1 15 1 1模块设计描述 12 5 1 25 1 2模块界面描述 12 5 2MODULE2 设计 13 6附录附录 14 6 1第三方组件 14 6 2参考资料 15 6 3附加文档 15 精品文档交流 精品文档交流 开发规划 开发人员开发人员 角角 色色主要职责主要职责负责模块负责模块人员人员备注备注 何鑫 负责编写窗口界面 创建通信套接字建立 连接 获取 http 请求 解析 请求报文 封装文件到 http 响应 报文中 并发送该响 应报文 软件的测试与优化 xxx 模块xxx 精品文档交流 精品文档交流 开发环境和工具开发环境和工具 开发工具 工具工具作用作用 Microsoft visual studio 2010web 服务器 窗口界面 精品文档交流 总体设计 概念术语描述概念术语描述 术语 1 静态文本框 术语 2 请求报文 响应报文 精品文档交流 基本设计描述基本设计描述 1 传入一个与某个浏览器通信的套接字 2 启动一个线程来监听浏览器接收到的数据 recive 3 如果监听浏览器的请求报文了 要 3 1 要将请求报文显示在服务器软件的文本框中 3 2 要分析浏览器发来的请求报文 3 3 要根据请求报文处理浏览器的请求页面 4 生成响应报文 并输出到浏览器 T 5 关闭当前连接 精品文档交流 主要界面功能流程描述主要界面功能流程描述 功能 1 界面流程 1 使用 vs2010 创建一个基于 c 的窗体程序 2 使用静态文本框 按钮等元素布置界面 3 添加显示文本框用来显示 ip 端口号 和 日志 3 给两个按钮的 text 重命名并在 name 里给其命名 4 最终窗体界面如图所示 注 我们默认服务器的 ip 地址为 127 0 0 1 端口号为 5004 精品文档交流 功能 2 创建浏览器和服务器的通信流程 数据结构 数据库表列表 表名表名作用作用 endpoint网络节点对象 用来传入网络节点对象 用来传入 ip 号和端口号号和端口号 adress用来获得用来获得 IP 这个文本框里面的内容 为将套接字绑定到端口这个文本框里面的内容 为将套接字绑定到端口 号中做准备号中做准备 threadwatch 创建负责调用套接字监听的线程 sokwatch负责监听浏览器的套接字 sokconnection 接收浏览器请求并生成相应的通信套接字对象 isrunning 用来控制监听循环是否退出 模块列表 模块名称模块名称 英文英文 功能功能备注备注 模块 1 sokwatch Bind endpoint 将套接字绑定到指定的端口号上 模块 2 sokwatch Listen 10 设置监听队列 监听套接字能够同时 处理的浏览器连接请求最大个数 模块 3 void watchConnectt 监听浏览器的连接请求 模块 4 threadwatch new Thread watchConnectt 实例化线程 模块 5 threadwatch Start 启动线程 模块 6 void showmsg string msg 用来在 txtmsglog 文本框中显示相应 的连接信息 精品文档交流 功能 3 接收请求报文流程 模块列表 模块名称模块名称 英文英文 功能功能备注备注 模块 1 public delegate void DGshowmsg string msg 用来在控件上显示消息的委托类型新建类Dataconnection 模块 2 public delegate void DGshowmsg string msg 用来在控件上显示消息的委托类型新建类Gshowmsg 并用委托 类型 模块 3 public Dataconnection Sock et sokconnection DGsho wmsg dgshow 在 Dataconnection 类里 通过在构造函数 传入参数的方式来传入与某个浏览器通信 的套接字和线程 模块 4 this threadconnecti on new Thread recmsg 直接在内部来创建通信线程对象 模块 5 this threadconnecti on IsBackground true this threadconnecti on Start 启动该线程 并将其设置为后台线程 arrmsg 模块 6 length sokconnection Recei ve arrmsg 将浏览器发来的数据装入缓存区 并获得 真实的数据长度 模块 7 Try Catch 调用委托对象来在文本框中打印异常消息 模块 8 dgshow recmsg 在文本框中显示消息 精品文档交流 数据结构 数据库表列表 表名表名作用作用 conn 创建 Dataconnection 类对象 并传入当前套接字和线程 arrmsg字节数组 当做缓存区 length用来存放浏览器发来的数据的长度 recmsg用来存储已转换成字符串类型的数据 功能 4 分析请求报文流程 模块列表 模块名称模块名称 英文英文 功能功能备注备注 模块 1 public HttpRequestmodel st ring requeststr 生成请求报文实体对象 并分析请求报文 字符串 将每个语义字符都次实体类的相 应属性中 新建类HttpRequestmodel 模块 2 string arrequest requestst r Replace r n 籀 Split 籀 这里表示的是将 r n 转换成 籀 便 于处理 并分割字符 新建类Gshowmsg 并用委托 类型 模块 3 string firstrow arrequest 0 Split 按照控件将已经分割好的字符再分割 模块 4 给路径赋值 精品文档交流 数据结构 数据库表列表 表名表名作用作用 path 定义页面路径字符串 功能 5 读取文件流程 模块列表 模块名称模块名称 英文英文 功能功能备注备注 模块 1 dataDir System IO Directory GetParent dataDir Parent Parent Full Name 获得浏览器请求文件的物理路径 默认该请求文件在工程目 录下 模块 2 Switch Case Case 根据请求文件的后缀名不同来做出不 同的判断 模块 3 void ProcessstaticPage s tring path 该方法用来专门处理静态文件 模块 4 using FileStream fs new FileStream path Fil eMode Open 使用文件流的方式来读取文件前提是要为FileStream 导 入命名空间 精品文档交流 数据结构 数据库表列表 表名表名作用作用 requestModel在 dataconnecton 类里创建请求报文实体对象 dataDir用来存放当前执行程序的物理路径 fileDir存储请求文件的物理路径 extentionName存储请求文件的后缀名 功能 6 生成响应报文流程 模块列表 模块名称模块名称 英文英文 功能功能备注备注 模块 1 public byte GetHttpResponseHead er 返回响应报文头字符串 默认该请求文件在工程目 录下 模块 2 return System Text Encodin g UTF8 GetBytes sbR esponse ToString 返回请求文件的字节数组 模块 3 sokconnection Send model GetHttpRespon seHeader 利用套接字来将响应报文头发送回去 模块 4 使用文件流的方式来读取文件前提是要为FileStream 导 入命名空间 精品文档交流 数据结构 数据库表列表 表名表名作用作用 arrfile以二进制形式存储的文件数据 contentType默认的响应内容的类型 sbResponse用来显示响应报文头 model生成响应报文头对象 精品文档交流 附录 第三方组件第三方组件 使用的命名空间 using System using System Collections Generic using System ComponentModel using System Data using System Drawing usi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025金华武义县教育系统赴安徽师范大学招聘5人模拟试卷及答案详解(典优)
- 2025年咸阳秦都怡心学校招聘考前自测高频考点模拟试题及参考答案详解
- 2025年水发集团权属一级公司纪委副书记专项招聘考前自测高频考点模拟试题及答案详解(新)
- 2025年春季江苏南通市通州区部分事业单位(医疗卫生类岗位)招聘90人模拟试卷附答案详解(完整版)
- 安全培训教师开头语课件
- 小学安全培训教育心得课件
- 2025湖南省永州市双牌县引进急需紧缺人才(医卫岗25人)考前自测高频考点模拟试题含答案详解
- 2025福建三明大田县公开招聘紧缺急需专业教师7人模拟试卷及1套参考答案详解
- 小学安全体验培训感悟课件
- 2025贵州民族大学高层次人才引进85人考前自测高频考点模拟试题及参考答案详解
- 大学生职业生涯规划与发展知到智慧树章节测试课后答案2024年秋东北农业大学
- 2025关于咨询服务合同范本
- 护理心理学自我意识
- 餐饮企业税务管理制度
- 无人机航拍及影像处理服务合同
- 《价值流分析讲义》课件
- 手术室无菌隔离技术
- 火锅店厨房管理制度
- 个人贷款管理办法(2024年第3号)
- 教科版六年级上册科学2.2《昼夜交替现象》(课件)
- 小学语文课程与教第二章:小学语文课程教材
评论
0/150
提交评论