@Test
public void loginSftp(){
try {
JSch jsch = new JSch();
//地址,用户名,端口22
session = jsch.getSession(username, host, port);
session.setPassword(password);
Properties config = new Properties();
config.put("StrictHostKeyChecking", "no");
session.setConfig(config);
//连接sftp
session.connect();
Channel channel = session.openChannel("sftp");
channel.connect();
sftp = (ChannelSftp) channel;
download();
} catch (JSchException e) {
e.printStackTrace();
}
}
登录代码如上,网上一大堆。
通过java连接sftp服务器的时候,经常会出现Auth fail的错误。。但不是一直出现,如果发10次登陆的请求,反正就会出现好几次登陆失败,又有好几次登陆成功的。所以用户名,密码,配置这些看上去都没有问题。
因为是内网开发,且sftp服务方是另外一个团队的,只要能调用通了,觉得问题在我这边。但一个简单的登录能有啥问题呀?
我在家搭了sftp服务器,随便怎么调用,都不会出现认证失败的问题。如果是一直失败还觉得哪里整错了,但是这个是偶尔失败,偶尔成功,在网上实在找不到答案。恳请有经验的大佬指导一波