第8章FTP文件上传下载课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第8章FTP文件上传下载课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- FTP 文件 上传下载 课件
- 资源描述:
-
1、8.1 FTP概述概述8.2 FTP客户端开发相关类客户端开发相关类8.3 FTP文件上传下载器的制作文件上传下载器的制作8.4 FTP上传下载软件测试上传下载软件测试本章教学目的、要求本章教学目的、要求 理解文件传输的基本概念以及FTP服务的工作过程。掌握FTP客户端编程涉及的相关类。熟悉FTP上传下载器的制作。本章教学重点及难点本章教学重点及难点 FTP客户端编程涉及的相关类。FTP上传下载器的制作。8.1.1 文件传输的基本概念文件传输的基本概念文件传输服务是由FTP应用程序提供的,而FTP应用程序遵循的是TCP/IP中的文件传输协议(File Transfer Protocol,即FT
2、P),它允许用户将文件从一台计算机传输到另一台计算机,并且能保证传输的可靠性。FTP协议采用典型的C/S模式,在传输层选择TCP协议。图8.1描述了文件传输的工作过程。匿名FTP(anonymous FTP)服务的实质是:提供服务的机构在它的FTP服务器上建立一个公开账户(通常为Anonymous),并赋予该账户访问公共目录的权限,以便提供免费的服务。如果用户要访问提供匿名服务的FTP服务器,不需要输入用户名和密码。如果需要输入它们的话,也是用系统默认的公开账户,比如“anonymous”作为用户名,密码为空;有些FTP服务器可能要求用户用自己的电子邮件地址作为密码。8.2.1 FtpWebR
3、equest类类FtpWebRequest类用于实现FTP客户端。若要获得FtpWebRequest的实例,需使用Create方法,该方法有以下两种重载形式。1.FtpWebRequest.Create(String)例如:FtpWebRequest reqFTP=(FtpWebRequest)FtpWebRequest.Create(ftp:/myFTPServer/myFile);2.FtpWebRequest.Create(Uri)例如:Uri siteUri=new Uri(ftp:/myFTPServer/myFile);FtpWebRequest reqFTP=(FtpWebReq
4、uest)FtpWebRequest.Create(siteUri);表8-1和表8-2分别列出了FtpWebRequest类的常用属性和方法。属性属性含义含义Credentials已重写。获取或设置用于与FTP服务器通信的凭据EnableSsl获取或设置Boolean,它指定是否使用SSL连接KeepAlive获取或设置一个Boolean值,该值指定在请求完成之后是否保持到FTP服务器的控制连接Method已重写。获取或设置要发送到FTP服务器的命令RenameTo获取或设置重命名文件的新名称RequestUri已重写。获取此实例所请求的URITimeout已重写。获取或设置等待请求的毫秒数
5、UseBinary获取或设置一个Boolean值,该值指定文件传输的数据类型。若要传输文本数据,请将UseBinary属性由默认值true更改为falseUsePassive获取或设置客户端应用程序的数据传输过程的行为方法方法含义含义Abort已重写。终止异步FTP操作BeginGetRequestStream已重写。开始以异步方式打开请求的内容流以便写入BeginGetResponse已重写。开始以异步方式向FTP服务器发送请求并从FTP服务器接收响应Create已重载。初始化新的WebRequest(从WebRequest继承)CreateDefault为指定的URI方案初始化新的WebR
6、equest实例(从WebRequest继承)EndGetRequestStream已重写。结束由BeginGetRequestStream启动的挂起的异步操作EndGetResponse已重写。结束由BeginGetResponse启动的挂起的异步操作GetRequestStream已重写。检索用于向FTP服务器上载数据的流GetResponse已重写。返回FTP服务器响应表表8-2FtpWebRequest类的常用方法类的常用方法发送命令是使用FtpWebRequest对象。以下代码新建FtpWebRequest对象,并设置常用属性:String ftpUriString=”ftp:/”+
7、ftpServerIP+/”;NetworkCredential networkCredential=new NetworkCredential(UserName,Password);/根据服务器信息创建FtpWebRequest类的对象FtpWebRequest request=(FtpWebRequest)FtpWebRequest.Create(ftpUriString);/提供身份验证信息request.Credentials=networkCredential;/设置请求完成之后是否保持到FTP服务器的控制连接,默认值为Truerequest.KeepAlive=true;/设置传输
8、的数据类型request.UseBinary=true;/设置所要执行的FTP命令。假设此处为显示指定路径下的文件列表request.Method=WebRequestMethods.Ftp.ListDirectoryDetails;FtpWebResponse类用于封装FTP服务器对请求的响应。FtpWebResponse对象提供操作的状态以及从服务器下载的所有数据。获取FTP响应时,需通过调用FtpWebRequest对象的GetResponse方法获取。返回的对象必须强制转换为FtpWebResponse.关键代码为:FtpWebRequest request=(FtpWebReques
9、t)FtpWebRequest.Create(ftpUriString);FtpWebResponse response=(FtpWebResponse)request.GetResponse();表8-3和表8-4分别列出了FtpWebResponse类的常用属性和方法。属性属性含义含义BannerMessage获取在登录前建立连接时FTP服务器发送的消息ContentLength已重写。获取从FTP服务器上接收的数据的长度ContentType当在派生类中重写时,获取或设置接收的数据的内容类型(从WebResponse继承)ExitMessage获取FTP会话结束时服务器发送的消息Resp
10、onseUri已重写。获取对请求发送响应的URIStatusCode获取从FTP服务器上发送的最新状态代码StatusDescription获取描述从FTP服务器发送的状态代码的文本WelcomeMessage获取身份验证完成时FTP服务器发送的消息方法方法含义含义Close已重写。释放响应所持有的资源GetResponseStream已重写。检索包含从FTP服务器上发送的响应数据的流在System.Net命名空间下,有一个NetworkCredential类。该类用于提供客户端身份验证机制的凭据。NetworkCredential类是为基于密码的身份验证方案(如基本、简要、NTLM和Kerb
展开阅读全文