【问题标题】:Google drive SDK: Cancel upload谷歌驱动SDK:取消上传
【发布时间】:2023-04-04 13:52:01
【问题描述】:

如何用Google Drive SDK取消文件上传请求?

我正在创建调用的 .NET 4 任务

FilesResource.InsertMediaUpload request = service.Files.Insert(body, stream, body.MimeType);
request.Upload();

我不能在这里使用取消令牌来取消我的任务,我也找不到任何取消请求的方法。我应该如何停止上传过程?\

更新

喂?有人吗?

【问题讨论】:

标签: google-drive-api google-api-dotnet-client request-cancelling


【解决方案1】:

Google 支持“很棒”。我想即使在happy housewives club forum 上,我至少会得到一个答案。 我已经知道这是不可能的,并且我自己添加了取消支持以上传功能,但是伙计们,如果您提供支持,则需要不时回答。这不是第一次长时间等待 Google 支持的响应。 Here 你说你在 Stack Overflow 上支持 Google Drive SDK。您肯定需要提高响应能力。

对于其他可能感兴趣的人。

我将项目更改为使用 .NET Framework 4.0,并在文件 Src\GoogleApis\Apis\Upload\ResumableUpload.cs 中将重载 CancellationToken token 参数添加到 Upload 函数。

do
{
    token.ThrowIfCancellationRequested(); // <----------------------
    bytesSent += SendChunk(contentStream, url, bytesSent);
    UpdateProgress(UploadStatus.Uploading, bytesSent);
} while (bytesSent < contentStream.Length);

然后在上传循环中添加标记行。

为避免测试失败,您还可以像这样重载 Upload 函数

public void Upload()
{
    Upload(new CancellationTokenSource().Token);
}

就是这样。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-07
  • 1970-01-01
相关资源
最近更新 更多