从外部Web应用程序验证Google云端硬盘

时间:2012-07-23 06:39:14

标签: google-api google-drive-api

我有一个asp.net MVC应用程序应该与我正在构建的Google Drive进行交互。我从我的UI收到一个fileId并将其传递给控制器​​,如下所示:

    [HttpPost]
    public void DownloadFile(string fileId)
    {
        FileService fileService = new FileService();
        DriveService driveService = new DriveService();
        fileService.GetFileMetaDataInfo(driveService, fileId);
        Console.WriteLine(fileId);
    }

public class FileService
{
    public void GetFileMetaDataInfo(DriveService service, String fileId)
    {
        try
        {
            Google.Apis.Drive.v2.Data.File file = service.Files.Get(fileId).Fetch();
            Console.WriteLine("Title: " + file.Title);
            Console.WriteLine("Description: " + file.Description);
            Console.WriteLine("MIME type: " + file.MimeType);
        }
        catch (Exception e)
        {
            Console.WriteLine("An error occurred: " + e.Message);
        }
    }
}

然后控制器将控制权传递给FileService类,该类也如上所示。在基本级别,我只是希望能够看到我是否能够从谷歌驱动器获取文件的MetaDataInfo。此代码在尝试获取文件详细信息(try块中的第1行)时抛出异常。我怀疑这与身份验证有关。这是我需要帮助的地方,我查看了Drive API文档,我不清楚如何从我的外部Web应用程序进行身份验证到Google云端硬盘。有人可以为我澄清一下,或者可能给我一个例子吗?

1 个答案:

答案 0 :(得分:0)

异常消息应告诉您请求失败的原因,但我同意您的问题是身份验证,因为我看不到您设置凭据的位置。

Google Drive SDK文档包含一个完整的ASP.NET MVC应用程序,您可以将其用作参考:

https://developers.google.com/drive/examples/dotnet