1

私が使用している IDE は Eclipse 4.2 Juno です。コンパイル エラーやインポート エラーはありません。これが私が現在使用しているコードです(一部はチュートリアルから露骨にコピーされ、一部は適応され、一部はどこから来たのかわかりません):

public static void print()
{

    HttpTransport httpTransport = new NetHttpTransport();
    JsonFactory jsonFactory = new JacksonFactory();

    Drive serv = new Drive(httpTransport, jsonFactory,null);
    try {
    File f = serv.files().get("1K5Ge9-Rz_L2gJH5hKrpkAfFDos5ZgRCvnzy7_HaiAV8").execute();

    System.out.println(f.getId());


        //System.out.println(f.getDownloadUrl());
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

}

エラーは「File f = ...」の行にあります。403 使用制限エラーが発生します。コードを見ると、Google のドキュメントの要件に従って認証されていないため、これは当然のことです。

このアプリケーションは、さまざまなソース (この場合は Google ドライブ) からコンテンツをフェッチし、外部プログラムを呼び出して変換する単純な実行可能 .jar です。ドキュメントのメタデータを把握できれば、それを使用してユーザーにより良いサービスを提供できます。ただし、コンテンツは公開する必要があります。では、ユーザーの個人情報を尋ねたり、Web ブラウザーを開いたりせずに、ドキュメントのリンクからデータを取得するにはどうすればよいでしょうか? はい、API キーを持っています。

概念実証HEREでは、OAuth2.0 を使用するかどうかを選択できるため、機能することはわかっています。記録のために、私は現在ドキュメントリストから移行しています。

編集 この質問を投稿してから5分以内に理解するのは理にかなっています。「https://www.googleapis.com/drive/v2/files/ document_id ?key= key」のような URL を作成するだけで、必要なすべてのデータを取得できます。

新しい質問です。ソース コードにキーを配置するのは賢明ですか?

4

1 に答える 1

1

OAuth 2.0 を使用してリクエストを承認しない場合、Google ドライブに保存されているファイルのメタデータを取得する方法はありません。

API キーの代わりに、承認されたリクエストを送信する前に、API コンソールでプロジェクトを作成し、アプリケーションの OAuth 2.0 資格情報を生成する必要があります。

OAuth フローを実行してアクセス トークンを取得したら、それを使用してドキュメントのメタデータを取得できます。Google ドライブ SDK を簡単に開始するには、https: //developers.google.com/drive/quickstart のクイックスタートを使用します。プロジェクトの作成から、ドライブにファイルをアップロードする完全なコマンドライン アプリケーションまでがガイドされます。 .

于 2012-09-24T07:34:39.213 に答える