我们使用Box.V2.Sdk使用以下代码将文件上传到box.com
Function UploadToBox(ByVal attachedFilename As String, ByVal stream As System.IO.Stream) As Boolean
Dim clientID As String
Dim clientSecret As String
Dim oldRefreshToken As String
Dim newToken As BoxApi.V2.Authentication.OAuth2.OAuthToken
clientID = "your client id"
clientSecret = "you client secret"
Dim tokenProvider As New TokenProvider(clientID, clientSecret)
'''' Reading Refresh token from the file
Dim streamReader As StreamReader
streamReader = System.IO.File.OpenText(Server.MapPath("~\\Box\\BoxApiRefreshToken.txt"))
oldRefreshToken = streamReader.ReadToEnd()
streamReader.Close()
newToken = tokenProvider.RefreshAccessToken(oldRefreshToken)
Dim boxManager As New BoxManager(newToken.AccessToken)
'''' Writing the new Refresh token to the file
Dim streamWriter As New StreamWriter(Server.MapPath("~\\Box\\BoxApiRefreshToken.txt"))
streamWriter.Write(newToken.RefreshToken)
streamWriter.Close()
Dim rootFolder As Folder
rootFolder = boxManager.GetFolder(Folder.Root)
boxManager.CreateFile(rootFolder, attachedFilename, ConvertStreamToByteArray(stream))
Return True
End Function
这里提到 http://www.codeproject.com/Tips/769414/Uploading-files-using-Box-API
UploadToBox方法处于循环中,并为我们需要上传的每个文件调用。但是,在上传很少后,我们收到了错误
基础连接已关闭:服务器已关闭预期保持活动状态的连接。
直观地看来,与盒子的连接正在关闭。但是从上面的代码中,我们不知道哪个部分试图创建连接,如果它关闭然后创建一个新的。使用c#SqlConnection可以很容易地检查连接是打开还是关闭。
请提出您的想法。
答案 0 :(得分:0)
这个问题听起来类似于官方支持的sdk和修复过的问题: https://github.com/box/box-windows-sdk-v2
你尝试过那个吗?
原始问题是由于默认超时在上传完成之前到期,连接已关闭。上传的失败是否大于成功的上传?您正在使用的SDK在封面下使用RestSharp,因此您可能需要查看源代码以查看是否可以配置超时。
HTH