我从帐户A共享了一个文件,帐户B只能读取此文件。Google Drive API:从其他帐户导入文件
在DriveWeb,我可以导入它很容易。然后用Drive API,账户B如何导入该文件(无需传输)。
谢谢。
我从帐户A共享了一个文件,帐户B只能读取此文件。Google Drive API:从其他帐户导入文件
在DriveWeb,我可以导入它很容易。然后用Drive API,账户B如何导入该文件(无需传输)。
谢谢。
假设您熟悉身份验证并具有设置Authenticated Drive服务的基本想法。如果不是,请阅读documentation或this教程,该教程将帮助您开始使用API。
共享文件可由其驱动器内的接收器在共享它的人的所有权下访问。这些文件不会占用您的配额,只有在许可的情况下才能访问。因此,我假定通过“导入”,您的意思是获取文件的所有权并将其保存在账户B中。
好的,让Service
为账户B的认证驱动器服务。假设账户B有权访问所需的文件在帐户A中。如果不是,请首先输入Insert Permission。
FileId
正在文件的Id
被复制和ParentId
是哪个文件是要复制的父目录的Id
,这里是使共享文件的副本的方法。
public void CopyFile(DriveService Service, string FileId, string ParentId)
{
try
{
File FileToCopy = Service.Files.Get(FileId).Execute();
File copiedFile = new File();
copiedFile.Title = FileToCopy.Title;
copiedFile.Parents = new List<ParentReference>() { new ParentReference() { Id = ParentId } };
Service.Files.Copy(copiedFile, FileToCopy.Id).Execute();
}
catch (Exception e)
{
MessageBox.Show("An error occurred: " + e.Message);
}
}
啊答谢答复,我可以在[这里](https://developers.google.com/drive/v2/reference/parents/insert)测试,我发现它。它是Parents.insert方法,并且您的回复是Files.Copy方法(它创建新文件,而不是“导入”) –
您正在处理哪种语言? –
我使用C#但讨厌Google Drive Lib,然后使用httprequest编写[new lib](https://github.com/tqk2811/Cloud-Manager/tree/master/Cloud/GoogleDrive)。我是自学C#的,那就不要嘲笑代码。 –