我正在用Java编写一个FTP服务器,现在我想回答LIST命令。只发送文件名就足够了,我不需要发送文件大小,所有者,权限等。似乎只是发送一些字符串,作为文件名,不满足客户端(我尝试了ASCII和二进制格式)。我怎样才能找出FTP客户端期望的回复?我应该如何处理我的FTP服务器中的LIST命令?
回答
如果你想创建一个兼容的FTP服务器,你需要处理LIST和NLST(标准命令)以及MLST和MLSD扩展命令。
的格式列表命令没有在任何地方定义,并且世界上大约有400种格式。使用Unix ls格式或Windows DIR格式可以与大多数客户端一起使用,因为这些格式相当普遍且得到客户端的支持。
NLST是仅限文件名的列表。
MLST和MLSD使用机器解析的格式(这是什么M字母表示),这是在RFC 3659.描述它更容易为客户处理和它的支持是非常欢迎。
Thanks.Now关于LIST在哪里可以找到FireFTP或Filezilla的特定格式? – Pedram 2011-05-28 02:10:56
我该如何让客户端发送MLST而不是LIST?是否足以将它发送到FEAT答案中? – Pedram 2011-05-28 02:15:45
@Pedram客户端通常能够理解大量的格式,并且都了解常见的Unix ls格式。所以如果你坚持使用unix格式,你几乎可以保证与客户取得积极的结果。关于MLST/MLSD - 我们的客户支持MLSD对常规列表的支持,所以如果支持MLSD,它将被使用。不过,这是依赖于客户端的。 – 2011-05-28 12:22:39
的规范的地方去寻找我的测试服务器的相关RFC:http://www.ietf.org/rfc/rfc959.txt
不幸的是,在这种特定情况下的RFC是相当含糊:
Since the information on a file may vary widely from system
to system, this information may be hard to use automatically
in a program, but may be quite useful to a human user.
为了确保与现有FTP客户端的兼容性,最好的方法是查看一些广泛部署的FTP服务器软件并模拟其输出格式。
- 1. Ftp客户端服务器,我的'cd ..'命令弄乱了我的'pwd'命令
- 2. 命令处理程序应该包含服务还是服务包含命令?
- 3. 我该如何构建我的红宝石命令行服务?
- 4. 我应该如何(应该)向服务中的线程添加处理程序
- 5. 我应该如何处理服务域的注入?
- 6. 我应该如何编写我的ssh代理命令?
- 7. 如何监视我的ftp应用程序发送到FTP服务器的命令
- 8. FileZilla不会对来自我的java FTP服务器的命令作出反应
- 9. 我应该如何处理芹菜任务中的redis连接?
- 10. 我应该处理
- 11. 如何处理停止我的服务?
- 12. 我应该如何处理“错误”命名的dll?
- 13. 我无法FTP到FTP服务器
- 14. 我该如何取消所有待处理意图的服务
- 15. 使用SSH /命令行FTP服务器到服务器
- 16. 我应该如何在我的REST API中处理认证?
- 17. 如何让git init命令成为我的服务器上的有效命令
- 18. 我该如何防止Debian FTP使用SYST命令
- 19. 使用KissXML处理WCF REST Web服务 - 我应该如何处理命名空间问题
- 20. 我应该如何处理软件包?
- 21. 我应该如何处理Button事件?
- 22. 我应该如何处理sqlite错误?
- 23. 如果服务器崩溃,应该如何处理?
- 24. 我应该写在SQL服务器的服务器名称
- 25. 当我的移动应用程序将他们的设备令牌报告给我的服务器时,我应该如何处理身份验证?
- 26. 应该如何处理应用程序服务器中的库冲突?
- 27. (StaleElementException:Selenium)我该如何处理?
- 28. NullReferenceException,我该如何处理?
- 29. 我该如何建立自己的代理服务器?
- 30. 我应该如何处理Codeigniter应用程序中的错误
如何读取关于RFC中LIST命令的一段而不是?如果你想为不同的程序提供特别的支持,那么你将不得不阅读他们的文档,但我怀疑他们期望从LIST命令中获得一个特定的格式 - 这不会很好。 – Voo 2011-05-27 17:35:47
我在RFC中找不到有关LIST响应标准的任何信息。 – Pedram 2011-05-27 17:53:37
因此,无论您的搜索关键是坏了,或者你没有搜索..因为否则第一个搜索“列表”将显示一个很好的整洁的段落p32 – Voo 2011-05-27 18:10:52