文档介绍::..技术文件技术文件名称:WEB软件模块详细设计说明技术文件编号:版 本:(包括封而)拟制 审核 会签 标准化 批准 住网通信技术有限公司修改记录文件编号版本号拟制人/修改人拟制/修改日期更改理由主要更改内容(写要点即可)-1-17初版注1:每次更改归档文件(指归档到事业部或公司档案室的文件)时,需填写此表。注2:文件第一次归档时,“更改理由”、“主要更改内容”栏写“无”。目录1编写目的 32术语、定义和缩略语 、定义 33模块描述 34模块设计 45数据描述 106函数定义 126」 引用函数定义 内部函数1 127接口设计 127」 用户接口 138其它说明 139参考资料 131编写目的〈要求:说明编写本文件的目的在于详细地说明XXXX模块中各成分的设计考虑,以利于程序员编制程序。>术语、、定义<要求:逐项列出本文屮用到的难以理解或可能引起混淆的术语及其定义。>CGICSSMIMEFirmwarenph-Mini-:v要求:逐项列出本文屮用到的缩略语及其原文和汉语含义。>3模块描述V要求:从模块在系统中的位置,实现原理及方式、实现的主要功能等方面來描述该模块的概貌。>我们说的WEB模块是指运行在系统屮的一个WEB部件。它由两大部分组成,一是指WEB-Server,这是我们选用一个开源的WEBSerevermini-httpd;另一个部分是指WEB应用程序部分,它通常由静态的WEB页面(HTML文件)、图片及相关文件(如CSS文件)和动态的交互WEB部分,如CGLASP、JAVASCRIPT等。这里静态文件部分我们全部支持,动态WEB部分我们采用CGI+JAVASCRIPT的方式实现(这里JAVASCRIPT是指运行在运行客户端的JAVASCRIPT)□,,。,,所以后文提到CGI的相关的内容全部以CGI1」为准。WEB模块的工作流程如下:用户/浏览器说明如下:,右边的虚框代表整个WEB模板。。3・在WEB模块内部由HTTPServer子模块接收请求。HTTPServer解析HTTP头部,决定请求的类型为请求静态文件还是请求CGI处理如果请求的为表态文件,如静态HTML页面,CSS文件,图片文件等,HTTPServer将从文件系统屮读収该文件,并构造HTTP应答消息,返回客户端。如果请求的是CGI处理,HTTPSever读取CGI脚本文件,并发起新的进程运行之。CGI从环境变量和标准输入屮获取输入参数,并解析输入处理请求,最后构造HTTP应答返通过标准输出将HTTP应答返冋给客户浏览器。CGI处理吋可以从文件系统中读取必要的信息,也可以向文件系统中存入必要的处理结果,如用户上传的文件等。重要注意:,如C、PERL、JAVAScript等,考虑嵌入式系统的特点,及在本系统中没有PERL、JAVAScript等脚本解释器,故选择用C实现。,在CE/3实现中HTTPServer并未发起新的进程來运行CGI脚本,而是修改了HTTPServer,让其直接调用CGI模块的处理入口函数。这样实现性能比较髙,没有发起新进程的开销;不足Z处是,一旦CGI处理模块出现问题,将可能影响HTTPServer的正常工作,甚至崩溃。这要求在CGI设计时必须十分小心。4模块设计V要求:主要用文字、图表等形式详细描述该模块的状态迁移、信号流程、程序流程、界面安排、进程关系、异常处理、错误处理等方面。详细说明本模块中的可测试性设计,包括提供的测试接口,测试内容和范围等。>WEB模块由WEBServer子模块、应用程序子模块组成。应用程序子模块通常又可以划为CGI处理子模块、静态文件组成。静态文件是指服务于CGI处理子模块的处理,如CGI输出页面要访问的图片、CSS文件、HTML内容等。故后文在描述应用程序子模块吋将针对CGI处理和