FTP错误:503错误的命令序列?

Cai*_*der 2 java ftp

我正在使用FileZilla FTP Server Windows版.我写了一个java程序来连接我的FTP服务器,并通过socket将FTP原始命令发送到服务器.当我发送"LIST"时,我收到503错误:

(000002)2011/6/1 10:46:56 - (not logged in) (127.0.0.1)> Connected, sending welcome message...
(000002)2011/6/1 10:46:56 - (not logged in) (127.0.0.1)> 220-FileZilla Server version 0.9.37 beta
(000002)2011/6/1 10:46:56 - (not logged in) (127.0.0.1)> 220-written by Tim Kosse (Tim.Kosse@gmx.de)
(000002)2011/6/1 10:46:56 - (not logged in) (127.0.0.1)> 220 Please visit http://sourceforge.net/projects/filezilla/
(000002)2011/6/1 10:46:56 - (not logged in) (127.0.0.1)> USER ggfan
(000002)2011/6/1 10:46:56 - (not logged in) (127.0.0.1)> 331 Password required for ggfan
(000002)2011/6/1 10:46:56 - (not logged in) (127.0.0.1)> PASS *****
(000002)2011/6/1 10:46:56 - ggfan (127.0.0.1)> 230 Logged on
(000002)2011/6/1 10:46:56 - ggfan (127.0.0.1)> LIST 
(000002)2011/6/1 10:46:56 - ggfan (127.0.0.1)> 503 Bad sequence of commands.
(000002)2011/6/1 10:46:56 - ggfan (127.0.0.1)> QUIT
(000002)2011/6/1 10:46:56 - ggfan (127.0.0.1)> 221 Goodbye
Run Code Online (Sandbox Code Playgroud)

请帮助
最好的问候

Jim*_*son 5

我认为,为了进行数据传输(LIST是数据传输命令),您必须首先发出PORT命令以建立数据连接.解决这个问题的最好方法是阅读相关规范,或者(更有趣)启动Wireshark,看看使用工作的FTP客户端实际发生了什么.