c# - Google Drive api v3 响应为空

标签 c# .net google-drive-api google-api-client

我想尝试上传文件谷歌驱动器,我的代码在这里:

 public static File UploadFile(DriveService service, string fileName, string filePath, string description, string parent)
{
  var fileMetadata = new File
  {
    Name = fileName,
    MimeType = GetMimeType(fileName),
    Description = description,
    OriginalFilename = fileName,
  };

  FilesResource.CreateMediaUpload request;
  using (var stream = new System.IO.FileStream(filePath, System.IO.FileMode.Open))
  {
      request = service.Files.Create(fileMetadata, stream, GetMimeType(fileName));
      request.Fields = "id";
      request.Alt=FilesResource.CreateMediaUpload.AltEnum.Json;
      request.Upload();
  }
  var file = request.ResponseBody;
  Console.WriteLine("File ID: " + file.Id);


  return null;

}

但是响应正文始终为空,我无法上传。顺便说一句,我在这张图片中看到了错误:

google-api-dotnet-client 1.16.0.0 gzip 格式无效值

任何人都知道如何解决此问题并上传文件谷歌驱动器。

enter image description here

最佳答案

看来 V3 已将 InsertMediaUpload 替换为 CreateMediaUpload,并且在使用服务帐户时至少 ResponseBody 将始终返回 NULL。

这使得确定文件的 ID 以及随后找到它来修改权限或执行其他任何操作变得困难。

关于c# - Google Drive api v3 响应为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39468798/

相关文章:

c# - 记录异常属性

.net - 序列化数据库列仅返回文本字段的一部分

c# - Bitmap.SetPixel 未设置正确的颜色

c# - 如何从 Azure 云服务的代码中获取服务名称?

javascript - 如何使用 JavaScript 播放 Google Drive 中的视频?

python - 获取 Google OAuth2 凭据或从承载类型 token 刷新 token ?

c# - 托管和非托管代码错误 C3699

c# - 自定义对话框 : Object reference not set to an instance of an object

c# - 如何在Visual Studio中隐藏自定义工具生成的文件

google-api - 如何将Google Drive视频导入同一YouTube帐户?