Google Drive API работал локально, но не при развертывании - PullRequest
0 голосов
/ 04 мая 2020

У меня есть класс, который вызывает API Google Диска, а затем отправляет результаты во внешний интерфейс. Это работает локально в Visual Studio. Но когда проект развертывается в Azure, Google Drive API возвращает значение null.

Это класс:

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

namespace webapp {
 public class RetrieveAPIData {
  public Dictionary < string, int > GetData() {
   Dictionary < string, int > data = new Dictionary < string, int > ();
   //var certificate = ;
   //var serviceAccountEmail = ;
   //var scopes = ;
   var credential = new ServiceAccountCredential(new ServiceAccountCredential.Initializer(serviceAccountEmail) {
    Scopes = scopes
   }.FromCertificate(certificate));

   // 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(name, id)";

   // List files.
   var files = listRequest.Execute().Files;

   if (files != null && files.Count > 0) {
    foreach(var file in files) {
     data.Add(file.Name, file.Id);
    }
   }

   return data;
  }
 }
}
...