如何在使用带OAuth的C#Google Drive API上传文件时更改Google云端硬盘中文件详细信息中显示的已创建名称?

时间:2016-12-14 03:47:08

标签: c# google-api google-drive-api google-oauth google-api-dotnet-client

我在https://console.developers.google.com/apis的Google帐户中创建了一个新项目,并为其创建了凭据。 然后我只使用客户端ID&我的C#项目凭据中的客户端密钥使用以下简单代码连接到我的Google云端硬盘:

UserCredential credential; 
credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
      new ClientSecrets { ClientId = "YourClientId", ClientSecret = "YourClientSecret" },
      new[] { DriveService.Scope.Drive,
        DriveService.Scope.DriveFile },
      "user",
      CancellationToken.None,
      new FileDataStore("Drive.Auth.Store")).Result; }


BaseClientService service = new DriveService(new BaseClientService.Initializer()
 {
      HttpClientInitializer = credential,
      ApplicationName = "Testing Application",
});

然后只需使用一些简单的代码将文件上传到Google云端硬盘即可获得成功。 但是,我想问一下如何在使用浏览器查看Google云端硬盘中的文件时更改名称,文件中有一个字段详情如下:

使用我的应用程序创建2016年12月13日

那么如何更改"我的应用程序"在C#代码中我想要的名字? 目前,此名称与我在https://console.developers.google.com/apis 上的Google云端硬盘API中创建的项目中OAuth同意屏幕中向用户显示的产品名称相同, 或者我必须创建多个项目才能拥有不同的名称?但似乎听起来很傻。 首先,我认为在初始化DriveService时名称应该是ApplicationName,但事实并非如此。 (那么ApplicationName的用法是什么?)

非常感谢你的帮助!

1 个答案:

答案 0 :(得分:1)

您无法以编程方式更改项目名称实际上无法以编程方式更改Google开发者控制台中的任何内容。

在Google开发者控制台上将每个应用程序分配到自己的项目是最好的IMO。造成这种情况的主要原因是,如果您的某个项目存在问题,Google会阻止它,而您的其他项目将继续有效。除非你真的很糟糕,否则你的整个帐户都会被阻止。

回答:是的,您必须创建新项目。

注意:我仍在试图找出"与[application]"是来自。它不是文件本身元数据的一部分。那么谷歌驱动器究竟在哪里获取这些信息。我知道客户端库设置了一些"奇怪的"使用ApplicationName的东西,但不是因为它从创建文件的项目本身获取它。这让我相信通过身份验证将其设置为上传。