C# GoogleDriveAPI中的TeamDrive
我正在尝试下面的代码,从他们的文档中获取。我无法编译,我收到一条异常消息: 也许我没有正确理解TeamDrive的概念 我不确定问题出在哪里。下面是我的代码片段:C# GoogleDriveAPI中的TeamDrive,c#,google-drive-api,C#,Google Drive Api,我正在尝试下面的代码,从他们的文档中获取。我无法编译,我收到一条异常消息: 也许我没有正确理解TeamDrive的概念 我不确定问题出在哪里。下面是我的代码片段: var teamDriveMetadata = new TeamDrive() { Name = "Project Resources" }; var requestId = System.Guid.NewGuid().ToString();
var teamDriveMetadata = new TeamDrive()
{
Name = "Project Resources"
};
var requestId = System.Guid.NewGuid().ToString();
var request = service.Teamdrives.Create(teamDriveMetadata, requestId);
request.Fields = "id";
var teamDrive = request.Execute();
Console.WriteLine("Team Drive ID: " + teamDrive.Id);
Console.WriteLine("Done.");
Console.Read();
以下是身份验证设置:
using (var stream =
new FileStream("client_secret.json", FileMode.Open, FileAccess.ReadWrite))
{
string credPath = System.Environment.GetFolderPath(
System.Environment.SpecialFolder.Personal);
credPath = Path.Combine(credPath, ".credentials/drive-dotnet-quickstart.json");
credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
GoogleClientSecrets.Load(stream).Secrets,
Scopes,
"MyKey",
CancellationToken.None,
new FileDataStore(credPath, true)).Result;
Console.WriteLine("Credential file saved to: " + credPath);
}
// Create Drive API service.
var service = new DriveService(new BaseClientService.Initializer()
{
HttpClientInitializer = credential,
ApplicationName = ApplicationName
});
仅供参考:我运行了链接的示例代码,没有问题。我有一个已经建立了适当权限的测试项目。我将链接代码粘贴到该项目中,并且必须在现有代码中解决与该代码冲突的var请求。一旦解决了问题,代码就可以正常运行
如前所述,我建议您专注于解决权限/范围问题。在运行代码之前,检查应用程序如何处理授权。需要运行请求。我已经尝试使用TeamDrive的Try this API:create并成功创建了一个新的TeamDrive。@Mr.Rebot,我刚刚在代码中添加了授权设置。我发现用户对此文件没有足够的权限。在使用Try this API.@Mr.Rebot时,您是如何使用Try this API的?我已经设置了requestId,并设置了teamDrive主体的name属性。