- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
.封装接收响应函数 为类添加公有成员函数(),用于接收来自服务器的响应消息,代码如下: 函数()没有参数,功能包括:调用类的成员函数()接收来自服务器的响应消息;添加响应消息到上,方便用户知道服务器的应答。 程序连接服务器的运行效果如图所示。 第三十一页,共五十二页。 图 程序连接服务器的运行效果 第三十二页,共五十二页。 更新文件列表 客户端可以发送命令到服务器,服务器会告知客户端:用户的根目录下到底有哪些文件。文件的信息是通过客户端与服务器端建立的数据连接传送的,传完连接会被关闭。 第三十三页,共五十二页。 .让服务器进入被动模式() 在主动模式()下, 的客户端只是告诉服务器自己的端口号,让服务器来连接客户端指定的端口。对于客户端的防火墙来说,这是从外部到内部的连接,可能会被阻塞。 为了解决服务器发起到客户的连接问题,有了另一种 连接方式,即被动方式。命令连接和数据连接都由客户端发起,这样就解决了从服务器到客户端的数据端口的连接被防火墙过滤的问题。 下面我们要在类中添加公有的成员函数(),用来实现这一功能,函数封装如下: 虽然代码看起来有些多(至少我这么认为),但客户端和服务器端的交互还是很简单的,如图所示。 第三十四页,共五十二页。 图 客户端和服务器端的交互 但函数()实现的功能还是比较简单的: ()发送命令让服务器进入被动模式(),服务器会新开一个端口号等待客户端的连接。 ()从服务器返回的响应中取出数据,然后计算端口号。 ()客户端创建一个临时的套接字连接服务器新开的端口。 第三十五页,共五十二页。 .更新列表 添加“更新文件列表”按钮的消息响应函数(),代码如下: 响应函数()功能的实现过程:调用我们之前封装的函数使服务器进入被动模式,再向服务器发送命令,用新建立的连接接收文件信息数据(封装在了函数()中),接收到的数据信息如图所示。最后关闭数据连接。 第三十六页,共五十二页。 图 由数据连接接收的文件信息 在类中添加公有的成员函数 (),实现解析文件信息,获取文件列表的功能,代码如下: 函数 ()功能的实现过程:用临时的数据连接接收数据(文件信息),从数据中筛选出文件名,添加到文件名列表中。 第三十七页,共五十二页。 第章 客户端 本章将带领大家编写一个简单的客户端程序,实现简单的功能:登录服务器,处理服务器上的文件,如上传、下载,最后安全退出服务器。先弄清楚原理,然后我们再考虑怎样去实现。 第一页,共五十二页。 工作原理 的工作原理跟一样,客户端需要先与服务器连接,等待服务器的应答,最后再建立数据通道。所以,浏览器在和服务器建立连接时也需要经过“三次握手”的过程。这表示客户端与服务器之间的连接是可靠、安全的,这也为数据传输提供了可靠的保证。的工作原理如图所示。 第二页,共五十二页。 图 工作原理图 第三页,共五十二页。 数据结构 进行编程之前,用户首先需要知道有哪些数据结构。由于在某些主机上保存的文件是面向字节的,某些是面向记录的。所以在中,除了有不同的数据类型以外,还有几种不同的文件结构类型。这样做的目的是为了在不同的主机之间传送文件时能够相互识别。 二进制结构:文件中没有内部结构,一般被看作二进制流。 文件式结构:由许多记录组成的文件。 页面结构:由不同的索引页组成文件。 ?注意:一般情况下,如果没有使用命令去设置文件的结构,则默认的结构是文件式结构。 第四页,共五十二页。 数据传输模式 在的数据传输中,传输模式将决定文件数据会以什么方式被发送出去。一般情况下,网络传输模式有种:将数据格式化后传送、压缩后传送、不做任何处理进行传送。当然不论用什么模式进行传送,在数据的结尾处都是以结束。在中定义的传输模式有以下几种。 第五页,共五十二页。 .二进制模式 二进制模式就是将发送数据的内容转换为二进制表示后再进行传送。这种传输模式下没有数据结构类型的限制。 在二进制结构中,发送方发送完数据后,会在关闭连接时标记。如果是文件结构,被表示为双字节。其中第一个字节为,而控制信息包含在后一个字节内。 本书中如无特别说明,均采用该模式进行传输数据。 第六页,共五十二页。 .文件模式 文件模式就是以文件结构的形式进行数据传输。文件结构是指用一些特定标记来描述文件的属性以及内容。一般情况下,文件结构都有自己的信息头,其中包括计数信息和描述信息。信息头大多以结构体的形式出现。 计数信息:计数指明了文件结构中的字节总数。 描述信息:描述信息是负责对文件结构中的一些数据进行描述。例如,其中的数据校验标记是为了在不同主机间交换特定的数据时,不论本地文件是否发生错误都进行发送。但在发送时发送方需要给出校验码,以确定数据发送到接收方时的完整性、准确性。 第七页,共五十二页。 在文件结构中,既可以用
您可能关注的文档
最近下载
- 2023年中国人民大学信息管理与信息系统专业《数据结构与算法》科目期末试卷A(有答案).docx VIP
- 2025年一级建造师公路桥梁上部结构装配与架设专题模拟试卷及解析.pdf VIP
- 面向领域适配任务的样本重要性重加权迁移学习算法体系分析.pdf VIP
- 2025年通信工程师DCCP协议拥塞控制机制专题试卷及解析-判断题.pdf VIP
- 多源异构医学数据库融合下的知识图谱构建数据标准与接口协议研究.pdf VIP
- 分层式联邦学习框架在复杂图像分割任务中的结构优化与协议演化.pdf VIP
- 联邦分布式图学习在黑产风险识别系统中的模型构建方案.pdf VIP
- 面向短视频平台的多模态内容分析与语义理解算法深度研究.pdf VIP
- 战略协议合作框架协议(通用10).pptx VIP
- 2025年招标师投标保证金与履约保证金管理的廉政风险点专题试卷及解析.pdf VIP
原创力文档


文档评论(0)