怎样能让FTP自动断点传续

更新时间:01-23 教程 由 桑稚 分享

怎样能让FTP自动断点传续?

二、上传:

1、获取服务器上和本地要上传文件的同名文件大小;

2、向服务器发送“APPE + 文件名”,通知服务器,接下来从数据通道发送给你的数据要附加到这个文件末尾。

3、定位本地文件指针(和FTP上文件大小相同的位置)

4、从文件指针处读数据并发送。 好 了,FTP断点续传的原理就这么简单。代码里将断点上传和断点下载放到同一个函数(MoveFile)里,通过get参数说明是上传还是下载。

当然,整个 FTP类的实现有800多行,包括登录、退出、获取FTP文件大小、删除FTP服务器上文件、响应服务器,解析响应信息等函数。

相应的注释代码里都有,这 里就不一一熬述了。 这里重点说说PASV模式,即被动模式,这是FTP命令里比较不容易理解的一个,这条命令请求服务器在某个端口(非FTP默认端口或控制命令端口)创建一个监听socket,服务器创建的端口号会在客户端的控制命令通道上得到响应。

得到这个端口号后,客户端就可以创建新的 socket(数据通道)connect过去,并进行文件传输等工作。

否则,如果为非被动模式,那么监听的socket由客户端创建,服务器connect过来。

对于这条命令的存在我是这么理解的,存在这么一种情况:客户端的IP是个内网的IP,服务器的IP是个外网的,当进行数据传输时内网的IP对于服务器是不可见的,只有由服务器启动监听socket才能建立数据通道,所以必须以被动模式进行。:)

声明:关于《怎样能让FTP自动断点传续》以上内容仅供参考,若您的权利被侵害,请联系13825271@qq.com
本文网址:http://www.25820.com/tutorial/14_2304605.html