0

2018 年 3 月 27 日以降、API キー アクセスを使用しているときに失敗する原因となる、 Google ドライブ APIと特にエクスポート機能で最近変更されたことはありますか?

教育グループ向けに毎日のコース メールを作成して送信する Windows サービスがあります。各メールのソース コンテンツは Google ドライブに Google ドキュメントとして保存されるため、教員はコースのコンテンツを簡単に更新できます。

これは過去 1 年間問題なく機能していましたが、2018 年 3 月 27 日に突然機能しなくなりました。それ以来、ファイルの詳細を取得できます。

    _googleDriveHtmlContent.LoadFile(
        fileId
        );

しかし、内容ではありません。ファイルをExportHTML として取得すると、すぐにハンドラーDownloadStatus.Failedから を取得します。ProgressChanged

    var request = _driveService.Files.Export(
        fileId, 
        "text/html"
        );

UI のないサービスであるため、セキュリティのために OAuth ではなく API キーを使用しています。これを行うには、ファイル フォルダーをパブリックにアクセスできるようにマークする必要があります。具体的には、「リンクを使用して誰でもアクセス可能」を使用しています。これはうまく機能しています。

NuGet を使用して最新の API v3 ライブラリに更新しましたが、動作に変更はありません。

Google の API Explorer を使用すると、同様の動作が見られます。

getエンドポイント で API Explorer を使用して、ファイルを正常に取得できます。https://developers.google.com/drive/v3/reference/files/get

  • ファイル ID1AIuGhzXsNuhhi0PMA1pblh0l5CCDaa1nPj8t_dasi_c
  • 認証: API キー (「デモ API キー」を使用)

しかし、exportエンドポイントでは、内部エラー (500)が発生します- https://developers.google.com/drive/v3/reference/files/export

  • ファイル ID1AIuGhzXsNuhhi0PMA1pblh0l5CCDaa1nPj8t_dasi_c
  • mime タイプ:text/html
  • 認証: API キー (「デモ API キー」を使用)

API Explorer で認証を OAuth 2.0 に変更し、アクセスを承認すると、ファイル HTML で成功した 200 の結果が返されます。ただし、UI のないサービスを介して API にアクセスしているため、それができません。

4

1 に答える 1