gpt4 book ai didi

c# - 使用 sshnet 库的 SFTP 上传 - 处理连接问题

转载 作者:太空狗 更新时间:2023-10-30 01:03:55 25 4
gpt4 key购买 nike

使用 Renci 的 sshnet 库,我无法在上传文件时处理连接问题。

如果我在 UploadFile 上设置一个断点,禁用我的连接并让它运行,它就会卡在该行上。这些文件在慢速连接上可能是大文件,因此添加 OperationTimeout 会很困难。

此外,这在一致的连接上一遍又一遍地工作。有任何想法吗?谢谢!

AuthenticationMethod[] methods = new AuthenticationMethod[1];
methods[0] = new PasswordAuthenticationMethod(username, pwd);

var con = new ConnectionInfo(Config.RemoteHostName, username, methods);
con.Timeout = new TimeSpan(0, 0, 0, 30);
var client = new SftpClient(con);

client.Connect();

string fullFilePath = string.Format("{0}{1}", Config.RemoteFilePath, filename);
client.BufferSize = 15000;
client.UploadFile(new MemoryStream(buffer), fullFilePath);
client.Disconnect();

最佳答案

传输文件时,SftpClient.OperationTimeout 确定库等待单个缓冲区读/写操作的时间(默认最大 64 KB,参见 SftpClient.BufferSize ).不是等待整个传输完成的时间。

因此您可以安全地将其从默认的“无限”更改为一些有意义的值。

关于c# - 使用 sshnet 库的 SFTP 上传 - 处理连接问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25736589/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com