2016-05-23 23 views
1

v3 APIを使用してGoogleドライブにファイルをアップロードしようとしていますが、アクセス方法を理解できません。GoogleドライブAPI v3 C#SDK無効な資格情報

私は(私は、ユーザーのGoogleドライブへの補助金のアクセスを要求すると、トークンを取得)

あり、私のコードですが、私はのためにトークンを入れてどのように理解していないaleadyの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のポストタイトルに示されている無効な認証情報が通常発生します。

このようなエラーの推奨処置は、長寿命リフレッシュトークンを使用してアクセストークンを更新することです。これが失敗する場合は、Authorizing Your App with Google Driveで説明されているように、OAuthフローを使用してユーザーを誘導します。

私はそれを参考して、これらのチュートリアルを通過する場合は、認証とファイルのアップロードについてよりよく理解する:

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

は、これらのチュートリアルに役立つ願っています。 :)

+0

ありがとうTeyam、あなたは私を非常に助けました!私はトークンをどこで指定するのか分からなかったが、今私はこの行が "request.OauthToken = token;"は正しい。 問題は、指定したトークンでした。このメソッドには、更新されたトークンを取得するバグがありました。 投稿されたコードがうまくいきます。 ありがとうございます! – user2950363

関連する問題