我知道在使用OAuth对请求进行授权时,我们可以使用多个范围来请求用户的特定权限。我想请求允许下载带有公共共享链接的文件(用户实际上将提供此链接)。
但是,here中列出的范围没有提供这样的选项。我不想获得所有文件的许可并吓them他们。
下面是我正在使用的代码。有任何想法吗?您认为有可能获得具有公共链接的文件的许可吗?可以使用共享链接的访问权限吗?
private string[] Scopes = { DriveService.Scope.DriveFile};
private DriveService GetDriveServiceInstance()
{
UserCredential credential;
using (var stream = new FileStream("Services/credentials.json", FileMode.Open, FileAccess.Read))
{
string credPath = "token.json";
credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
GoogleClientSecrets.Load(stream).Secrets,
Scopes,
"user",
CancellationToken.None,
new FileDataStore(credPath, true)).Result;
Console.WriteLine("Credential file saved to: " + credPath);
}
BaseClientService.Initializer bcs = new BaseClientService.Initializer();
bcs.HttpClientInitializer = credential;
bcs.ApplicationName = "synergy";
DriveService service = new DriveService(bcs);
return service;
}