我正在使用tus.io(简历 - 可用文件上传库(.NET客户端库将文件上传到Web服务器。
这是代码段:
Dim testfile = My.Computer.FileSystem.GetFileInfo("....test.pptx")
Dim tc As New TusClient.TusClient()
AddHandler tc.Uploading, Sub(bytesTransferred As Integer, bytesTotal As Integer)
Dim perc As Decimal = bytesTransferred / bytesTotal * 100.0
Console.WriteLine("Up {0:0.00}% {1} of {2}", perc, bytesTransferred, bytesTotal)
End Sub
Dim fileURL = tc.Create(ServerURL, testfile)
tc.Upload(fileURL, testfile)
上传功能适用于小文件,例如500KB文件,但不适用于3MB或更高尺寸的文件。传输100%数据后,它会引发异常(根据上传事件给出的%(。
例外:WebException
消息:远程服务器返回错误:(460(未知。
响应内容:"标题上传 - 检查不匹配文件的校验和文件"
状态:protasterror {7}
请让我知道此处是否缺少任何必需的信息。任何解决方案或快速解决方法都将不胜感激。谢谢。
ps。由于特权有限,我无法添加tus.io标签。
tus.io .NET客户端库中包含了" check-sum"标头,该标头导致客户端丢弃此错误。目前最简单的解决方案是删除或评论以下行,重新编译,您会很好。
TusClient.cs
line 150: request.AddHeader("Upload-Checksum", "sha1 " + Convert.ToBase64String(sha1hash));