Fey*_*yaz 1 ftp error-handling append
我想以编程方式将文件上传到ftp服务器(C++).如果在上传文件时连接丢失,我不想从头开始上传文件,而只是上传我尚未发送的部分.
APPE命令是否符合我的要求?我应该准确使用哪些FTP命令列表?如何?
我正在搜索有关APPE FTP命令的详细信息,它实际上是什么,但大多数网站只是状态只附加.然后我尝试命令以确保它按预期运行.
我设计了FTP自动发送器,用于将日志文件从机器发送到服务器进行报告.我只想发送日志文件的最后一行.
当使用APPE命令时,它实际上附加整个文件内容并附加到服务器中的现有内容.这将导致行条目重复.
答案: 如果最后一次传输失败,要执行文件的恢复,没有这样的命令,但我们需要使用一系列命令来实现它.
这里的关键点是,如果您正在使用APPE命令或使用命令REST,请将本地文件搜索到上次上载的字节.REST将在该特定字节开始位置开始传输.我最终建立连接后执行此解决方案:
使用APPE(我从FileZilla日志中得到了想法):
使用STOR和REST(我从edtFTPnet获得了这个想法):
请注意,并非所有FTP服务器都支持这两种方式.我看到FileZilla这两种方式切换取决于服务器.我的观察表明,使用REST是标准方法.下载也可以使用REST在给定的字节位置开始下载.
请记住,使用ASCII传输类型的简历支持会产生意外的结果,因为Unix和Windows具有不同的换行字节数.
尝试操作FileZilla以查看日志中的行为.您还可以查看这个有用的开源FTP for .NET库,了解它们的工作方式. edtFTPnet
归档时间: |
|
查看次数: |
11191 次 |
最近记录: |