FTP文件上传失败

        上周给河北一客户做一个数据导入功能,报错后将错误log日志及报错的文件上传到FTP上,方便追溯。用的jdk1.6,在网上找了个jar包,本地测试的时候一切顺利,就让客户那边测试,测试发现报错后log日志能传上去,原文件一直传不上去。我们用的FTP服务器是公司的,客户用的是他们自己搭的FTP服务器,所以我们就连了下客户的FTP进行调试:

发现FTPClient.storeFile();这个方法返回了false,

跟进去发现连接模式为被动模式并且在创建服务器连接时这个ip地址是本地局域网ip,端口号也没有。所以就想到了连接问题,找到__dataConnectionMode赋值的地方,确认应该使用enterLocalPassiveMode()这个方法。调用下FTPClient.enterLocalPassiveMode();放在FTPClient.storeFile()方法前面再次测试:

这次连接服务器的ip也变成了客户服务器的ip,端口也新开了一个,上传文件成功。

https://mp.weixin.qq.com/s/7c4hYX2WoFaA2-fDBLmJAA

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容