我有一个系统,我们通过FTP传输代理发送文件。 现在我需要进行更改以发送带或不带代理的文件。
我尝试创建一个没有主机和端口值的FTPClient
连接,也没有用户ID和pwd。比如client = new FtpClient();
单独发送没有代理的文件?
我读到Proxy.Type.DIRECT
,而不了解我是否应该申请我的要求。
答案 0 :(得分:0)
从您的代码中,您似乎使用的是FTP代理(不是普通代理)。
client = new FtpClient(proxy, Integer.parseInt(port));
client.login(username+"@"+host, password);
如果您想直接连接,请连接到host
,而不是proxy
。另外我假设目标主机的实际用户名只是username
。 FTP代理使用格式为username@host
的用户名来告知它应该将连接转发给哪个主机。
client = new FtpClient(host, Integer.parseInt(port));
client.login(username, password);
不确定端口。如果您的FTP代理使用非标准端口,则可能不应使用port
,而是连接到标准FTP端口21
。