2016-05-23 167 views
1

我試圖使用v3 API上傳Google雲端硬盤中的文件,但我不明白如何獲取訪問權限。Google雲端硬盤API v3 C#SDK無效憑證

我已經通過已位於的OAuth2獲得的令牌(我爲授予訪問權限的用戶谷歌驅動器的請求,並獲得令牌)

有我的代碼,但我不知道如何把令牌的認證。

//creazione servizio 
var DriveService = new Google.Apis.Drive.v3.DriveService(); 

//creazione del file 
Google.Apis.Drive.v3.Data.File body = new Google.Apis.Drive.v3.Data.File(); 
body.Name = nome; 
body.MimeType = mimeType; 

//upload del file 
Google.Apis.Drive.v3.FilesResource.CreateMediaUpload request = DriveService.Files.Create(body,file,mimeType); 
request.OauthToken = token; 
request.Fields = "id"; 
request.Upload(); 

Response.Write(request.Upload().Exception.Message); 

var returnFile = request.ResponseBody; 

if (returnFile != null) 
{ 
    esito.urlFile = returnFile.Id; 
    esito.esito = true; 
} 

在此先感謝大家。

回答

1

如果您使用的訪問令牌已過期或無效(如Handling API Errors中所述),通常會遇到您在SO帖子標題中指示的憑據無效。

建議此類錯誤的操作是使用長期刷新令牌刷新訪問令牌。如果失敗,請指導用戶通過OAuth流程,如Authorizing Your App with Google Drive中所述。

我發現它的幫助,你會明白有關身份驗證和上傳文件更好,如果你去通過這些教程:

  1. Google Drive Authentication C#
  2. Google Drive API with C# .net – Upload

希望這些教程幫助。 :)

+0

謝謝Teyam,你幫了我很大!我不確定指定令牌的位置,但現在我確定這一行是「request.OauthToken = token;」是對的。 問題在於您指出的令牌。檢索刷新令牌的方法中存在一個錯誤。 我發佈的代碼運行良好。 謝謝! – user2950363

相關問題