Google ドライブのフォルダから画像のギャラリーを読み込む App Engine Web アプリケーションを作成しています。このコードは、ローカルで実行すると問題なく動作します (画像が取得され、Web ページに正しく表示されます) が、Google App Engine にデプロイすると機能しなくなります。具体的には、次のメソッドを起動すると、返される Drive サービスは null であり、例外はスローされません。資格情報 (SERVICE_ACCOUNT_EMAIL および PKCS12 ファイル) は、コードをローカルで実行するときに機能するため、正しい必要があります。ここで何が欠けていますか?前もって感謝します。
public static Drive getDriveService() {
HttpTransport httpTransport = new NetHttpTransport();
GsonFactory jsonFactory = new GsonFactory();
GoogleCredential credential;
Drive service = null;
List<String> scopes = Arrays.asList(DriveScopes.DRIVE);
try {
credential = new GoogleCredential.Builder()
.setTransport(httpTransport)
.setJsonFactory(jsonFactory)
.setServiceAccountId(SERVICE_ACCOUNT_EMAIL)
.setServiceAccountScopes(scopes)
.setServiceAccountPrivateKeyFromP12File(
new java.io.File(SERVICE_ACCOUNT_PKCS12_FILE_PATH))
.build();
service = new Drive.Builder(httpTransport, jsonFactory, null).setApplicationName("MyAppName")
.setHttpRequestInitializer(credential).build();
} catch (Exception e) {
e.printStackTrace();
}
return service;
}