编程语言
首页 > 编程语言> > java – 在Apache Commons Net中启用FTP协议登录

java – 在Apache Commons Net中启用FTP协议登录

作者:互联网

Apache Commons Net库似乎没有向任何“logger”发送任何内容.

我可以以某种方式从(FTP)会话中获取日志文件,以进行调试吗?例如,来自服务器的原始FTP命令和响应,如下所示:

220 Welcome
USER *******
331 Password required for ...
PASS *******
230 Logged on
TYPE I
200 Type set to I
QUIT
221 Goodbye

解决方法:

Apache Commons Net中的所有协议实现(包括FTPClient)都派生自SocketClient,其方法为addProtocolCommandListener.您可以将其传递给ProtocolCommandListener以实现日志记录.

有一个现成的实现PrintCommandListener,它将协议日志打印到提供的PrintStream.

使用这样的代码:

ftpClient.addProtocolCommandListener(
    new PrintCommandListener(
        new PrintWriter(new OutputStreamWriter(System.out, "UTF-8")), true));

…,您将获得您所要求的输出.

标签:java,logging,ftp,apache-commons-net
来源: https://codeday.me/bug/20191002/1843078.html