我必须编写FTP服务器的代码,而且我对数据如何传输有问题。
我在linux上使用ftp命令来测试它,我目前正在开发LIST,它发送工作目录中的文件/目录列表。一切正常(ftp很好地打印文件列表),除了ftp打印以下警告外:
WARNING! 5 bare linefeeds received in ASCII mode
File may not have transferred correctly.
我想删除这个警告,我认为ftp正在等待二进制数据,但我不知道如何通过套接字发送这样的数据,我目前正在做最基本的方式来发送ls结果:
dup2(dst_channel, 1);
execlp(
我在Linux中实现了一个类似FTP的协议(家庭作业),我遇到了以下问题:在另一端设法做accept()之前,客户端可能能够连接()和write() (但在它做了listen()之后)。如果不依赖于在不同的通信通道中传递"accept succeeded,you can now write“这样的消息,我如何才能阻止写操作的工作?
我正在构建一个解决方案,WCF服务充当FTP服务器之间的网关,它必须通过FTP协议(linux服务器)和windows客户端应用程序远程访问。服务本身将托管在windows IIS服务器上。
我的模型基于一篇关于使用WCF的http上的流文件的文章,但问题是:
我必须先在windows服务器上下载该文件,然后再将其加载到客户端,这可能是一个主要的性能问题。我想将文件从FTP服务器直接流到客户端,而不必先下载它。
这是密码。
public class TransferService : ITransferService{
Starksoft.Net.Ftp.FtpClient ftp = new