服务器关闭了预期保持活动状态的连接



我们使用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 检查连接是打开还是关闭相当容易。

请提出您的想法。

此问题听起来类似于在官方支持的 sdk 中发现并修复的问题:https://github.com/box/box-windows-sdk-v2

你试过用那个吗?

最初的问题是,由于默认超时在上传完成之前过期,连接正在关闭。失败的上传是否大于成功的上传?您正在使用的 SDK 在幕后使用 RestSharp,因此您可能需要查看源代码以查看是否可以配置超时。

相关内容

最新更新