Java – 连接被对等体重置:套接字写入错误

我正在尝试使用Java Spring Boot实现基本的FTP客户端,我遇到了这个问题,我想问你,如果你有任何经验。

我让我的Tomcat服务器运行,我把我的电脑调到睡眠模式,大约3个小时后,我唤醒电脑,服务器仍然在运行,所以我试图调用端点(这个端点应该检查连接,然后把文件上传到FTP服务器),但我得到了这个异常消息。

Connection reset by peer: socket write error

您认为这是因为电脑长期处于睡眠状态,失去了连接,还是应该是其他原因造成的?如果是的话,我应该如何处理这种情况?

当我重启服务器后,文件上传正常。

这是我的端点类。

    @PostMapping("/upload")
    public String uploadFile(@RequestParam("file") MultipartFile file) {
        try {
            FTPClient ftpClient = Connection.getFtpClient();

            if (!Connection.isConnected()) { Connection.connect(); }

            ftpClient.changeWorkingDirectory("/AiDisk_a1/usb/");
            ftpClient.setFileType(FTP.BINARY_FILE_TYPE);

            InputStream inputStream = new BufferedInputStream(file.getInputStream());
            ftpClient.storeFile(file.getOriginalFilename(), inputStream);

            return "Status: " + ftpClient.getReplyString();
        }
        catch (IOException ex) {
            System.out.println("Endpoint exception: " + ex.getMessage());
            return "Endpoint exception: " + ex.getMessage();
        }
    }

谢谢你的建议

解决方案:

我认为你需要使用 logout()disconnect().

logout() throws IOException

通过发送QUIT命令退出FTP服务器。

 } finally {
    ftp.logout();
    ftp.disconnect();
  }

在做任何事情之前,必须先用connect连接到服务器,最后在完全完成与服务器的交互后再断开连接。FTPC客户端

给TA打赏
共{{data.count}}人
人已打赏
未分类

为什么我不能解开(融化)这个熊猫数据框架(python)

2022-9-8 18:12:03

未分类

我如何在SQL中添加数值到count?

2022-9-8 18:12:05

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索