ftpClient文件上传成功但总是返回false
程序员文章站
2022-06-15 13:46:28
...
ftpClient.storeFile(newFileName, is);文件上传成功但总是返回false
flag = ftpClient.storeFile(newFileName, is);
if (flag)
return newFileName;
解决办法:
在代码前面加上ftp.enterLocalPassiveMode();重新编译后即可
如下:
ftp.enterLocalPassiveMode();
flag = ftpClient.storeFile(newFileName, is);
if (flag)
return newFileName;
原因说明:
FtpClient.enterLocalPassiveMode();这个方法是每次数据连接之前,ftp client告诉 ftp server开通一个端口来传输数据。这样做主要是因为ftp server可能每次开启不同的端口来传输数据,但是在linux或者其他的服务器上传,我们知道service返回给client信息是通过20号端口,如果通过其他端口传输数据的话,通过20号端口就接收不到数据。所以会返回false
下一篇: Rafy 框架 - 流水号插件