下面的控制台应用程序在复制许多文件后返回异常。我想知道在.NET中使用Google drive api复制和创建文件夹的具体限制。按照内部异常。"Unable to read data from the transport connection: Was Forced to cancel the exist connection by remote host"。
static void Main(string[] args)
{
if (Debugger.IsAttached)
CultureInfo.DefaultThreadCurrentUICulture = CultureInfo.GetCultureInfo("en-US");
string[] Scopes = { DriveService.Scope.DriveReadonly, DriveService.Scope.DriveFile };
ServiceAccountCredential credential;
using (var stream =
new FileStream("key.json", FileMode.Open, FileAccess.Read))
{
credential = GoogleCredential.FromStream(stream)
.CreateScoped(Scopes)
.UnderlyingCredential as ServiceAccountCredential;
}
// Create Drive API service.
var service = new DriveService(new BaseClientService.Initializer()
{
HttpClientInitializer = credential,
ApplicationName = "Test App",
});
Google.Apis.Drive.v3.Data.File copiedFile = new Google.Apis.Drive.v3.Data.File();
for (int i = 0; i < 50; i++)
{
copiedFile.Name = "";
copiedFile.Parents = new List<string> { "1I6eCYECR8lfpWP6wFDWeYkTsUMC6jKie" };
try
{
var lFile = service.Files.Copy(copiedFile, "157cV64pH6Jdpm8SER1MQStPhnl01XHI65AsfPwSeTqw").Execute();
Console.WriteLine("File " + (i+1).ToString() + " copied.");
}
catch (Exception e)
{
Console.WriteLine("Error = " + e.InnerException.Message);
}
}
}
谢谢你的帮助! 我已经意识到我们的SonicWall防火墙阻止了一些请求。在设置(Sonicwall)不阻止我们的请求后,问题得到了解决。 我在这里附上了完整的错误。