我正在使用 Net::SFTP 将文件上传到服务器。这是代码:
uri = URI.parse('sftp://host.org')
io = StringIO.new(csv_string)
timeout 120 do
Net::SFTP.start(uri.host,ENV['SFTP_USER'],:password=>ENV['SFTP_PASS'],:port=>22) do |sftp|
sftp.upload(io, "/ftpguest/Medstro/" + file_name)
end
end
当我运行代码时,它成功连接到主机并上传了一个具有正确文件名的零字节文件。然后它抛出这个异常:
lib/ruby/gems/2.3.0/gems/net-sftp-2.1.2/lib/net/sftp/session.rb:947:in `dispatch_request': no such request `403046400' (Net::SFTP::Exception)
文件内容没有上传,我只是得到一个零字节文件。我在谷歌上找不到任何东西。有谁知道如何解决这个问题?
仅供参考,我可以使用 WinSCP 上传文件。