2017-04-01 14 views
0

ドライブAPI経由でチェックサムを取得する方法はありますか?Googleドライブのチェックサム

This answerは、「試してみてください」という機能を使って行っていますが、これは恐ろしいインターフェースです。

.NET(C#)GoogleドライブAPI経由でどうすればいいですか? または、自分の投稿/取得リクエストを使ってどうすればいいですか?

答えて

1

.NET Quickstartは、基本的なリストファイルの方法であるため試してみてください。

using Google.Apis.Auth.OAuth2; 
using Google.Apis.Drive.v3; 
using Google.Apis.Drive.v3.Data; 
using Google.Apis.Services; 
using Google.Apis.Util.Store; 
using System; 
using System.Collections.Generic; 
using System.IO; 
using System.Linq; 
using System.Text; 
using System.Threading; 
using System.Threading.Tasks; 

namespace DriveQuickstart 
{ 
    class Program 
    { 
     // If modifying these scopes, delete your previously saved credentials 
     // at ~/.credentials/drive-dotnet-quickstart.json 
     static string[] Scopes = { DriveService.Scope.DriveReadonly }; 
     static string ApplicationName = "Drive API .NET Quickstart"; 

     static void Main(string[] args) 
     { 
      UserCredential credential; 

      using (var stream = 
       new FileStream("client_secret.json", FileMode.Open, FileAccess.Read)) 
      { 
       string credPath = System.Environment.GetFolderPath(
        System.Environment.SpecialFolder.Personal); 
       credPath = Path.Combine(credPath, ".credentials/drive-dotnet-quickstart.json"); 

       credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
        GoogleClientSecrets.Load(stream).Secrets, 
        Scopes, 
        "user", 
        CancellationToken.None, 
        new FileDataStore(credPath, true)).Result; 
       Console.WriteLine("Credential file saved to: " + credPath); 
      } 

      // Create Drive API service. 
      var service = new DriveService(new BaseClientService.Initializer() 
       { 
        HttpClientInitializer = credential, 
        ApplicationName = ApplicationName, 
       }); 

      // Define parameters of request. 
      FilesResource.ListRequest listRequest = service.Files.List(); 
      listRequest.PageSize = 10; 
      listRequest.Fields = "nextPageToken, files(id, name)"; 

      // List files. 
      IList<Google.Apis.Drive.v3.Data.File> files = listRequest.Execute() 
       .Files; 
      Console.WriteLine("Files:"); 
      if (files != null && files.Count > 0) 
      { 
       foreach (var file in files) 
       { 
        Console.WriteLine("{0} ({1})", file.Name, file.Id); 
       } 
      } 
      else 
      { 
       Console.WriteLine("No files found."); 
      } 
      Console.Read(); 

     } 
    } 
} 

    } 
} 

この行を編集:

listRequest.Fields = "nextPageToken, files(id, name)"; 

へ:

listRequest.Fields = "nextPageToken, files(id, name, md5Checksum)"; 

上記のリンクから解決策が正しいか、機能を試してみてください、あなたは、それぞれの方法をよく理解し、どのようにするのに役立ちます応答と要求が形成されます。

これが役に立ちます。

+1

ありがとう、私はそれを行う方法を取得しました。 – Tobiq

関連する問題