如何从服务器端强制FTP客户端使用二进制模式

3 投票
1 回答
2125 浏览
提问于 2025-04-17 04:10

我们有一些设备上运行着一个专用的FTP客户端。它们通过一个基于Python的FTP服务器,从我们的网络服务中获取媒体文件(比如AVI视频和图片)以及XML文件。现在我遇到的问题是,这个FTP客户端想要以ASCII模式下载媒体文件,而不是二进制模式。我希望继续使用我们的Python FTP服务器(pyftpdlib),但我找不到强制客户端使用二进制模式的方法。

我浏览了一下FTP的相关标准文档,想找一个命令和响应的序列,这样我们的FTP服务器就可以告诉FTP客户端使用二进制模式,而不是ASCII模式。请问有没有这样的命令和响应序列呢?

1 个回答

2

你可以通过使用自定义的 FTPHandler 来改变你 FTP 服务器的默认行为。具体来说,你可以重写 FTPHandler.ftp_TYPE(filetype) 这个方法,这样就能强制你的服务器以二进制模式来传输文件,设置为 self._current_type = "i"

撰写回答