2013-05-13 17 views
6

私はGAE(Python 2.7)にアプリを持っており、現在、Googleドライブにアクセスして、フォルダとドキュメントの(共有)リストを表示する必要があります。Google App EngineからGoogle Drive APIを使用するにはどうすればよいですか?

通常は、App Engine and Google Drive APIなどのDrEditへのポインタが表示されますが、DrEditはGAEではなくGoogleドライブのサンプルアプリケーションであるため、同じ質問をしますが同意できない回答を受け入れます。

+0

"DrEditは、Google App EngineでPythonで書かれたWebアプリケーションです"。どうしたの? https://developers.google.com/drive/examples/python –

+0

この質問:http://stackoverflow.com/questions/15454708/accessing-google-drive-from-a-google-app-engine-python-app 「ありがとう、私はそれを試しました。また、developers.google.com/drive/examples/pythonでDrEditを試しました(私の要件とは何の関係もないことを理解するために何時間もかかりました)。 DrEditはGoogleドライブのアプリで、Googleドライブに機能を追加します。私は、GAEからDriveを読んでみたいです。 DrEditをもう一度見てみましょう。どこかに必要な情報があります。 – cbootle

+1

DrEditには、必要な設定情報がすべて含まれています。しかし、多くのサンプルアプリのように、それはかなり複雑です。誰かがこのスレッドに出くわして、Drive-Api-appの基本的な配線だけを持っているなら、それは非常に役に立ちます。 – rGil

答えて

4

GoogleのApp EngineとGoogleドライブの両方のGoogle製品ですがhttps://developers.google.com/drive/v2/reference/files/listが、残念ながら彼らは直接リンクしていません。

ドライブのAPIからのファイルのリストは、私はGAEから使用できるようにしたいと思いますものです。 GoogleドライブAPIには、インストールする必要があるgoogle-api-python-clientライブラリからアクセスできます。

プロセスはPython Google Drive API Quickstart Guideで発見することができ、かつ以下のように要約形式は次のとおりです。

Googleの側では
  1. :あなたのGAEプログラム

    • Activate Drive API用ドライブAPIアクセスを許可します。資格証明書を続行するボタンにGo]をクリックしてください...
    • は、あなたの同意画面を作成します。
      • クリックを:これは設定されていない場合、Googleは奇妙なエラーがスローされますようセットアップあなたののOAuth同意画面のOAuth同意画面上タブ
      • メールアドレスを選択し、製品名を入力してください。
    • 取得した資格情報:資格情報の
      • クリックタブ
      • 選択は、資格情報を追加して、OAuth 2.0のクライアントID。アプリケーションタイプを選択し、関連する詳細を入力します。後で変更することができます!
      • [資格情報]ページに戻るには、JSONの資格情報をダウンロードします(テーブルの右にあるすべての方法で、ダウンロードボタンは近くにマウスを移動すると表示されます)。名前をclient_secret.jsonに変更し、ルートコードディレクトリに配置します。ユーザーから資格情報を要求するには、これが必要になります。あなたの側では
  2. Download the google-api-python-client libraryは、あなたのコードのディレクトリに解凍し、python setup.py installを実行します。これにより、多くのGoogle製品のAPIを保持するライブラリがインストールされます。

  3. これで、ドライブAPIを使用する準備が整いました。 sample codeを使用してアクセスをテストできます。あなた自身のコードを書くための良いガイドだからそれを読んでください!ユーザーデータにアクセスする場合は、ログイン時にユーザーの資格情報を要求し、おそらくそれらを格納する必要があります。次に、APIを使用するために、最も簡単な方法は、serviceオブジェクトを取得することです:コードスニペットの上

    import httplib2 
    from apiclient import discovery 
    
    credentials = get_credentials() #Your function to request/access stored credentials 
    #Authorise access to Drive using the user's credentials 
    http = credentials.authorise(httplib2.Http()) 
    #The service object is the gateway to your API functions 
    service = discovery.build('drive', 'v2', http=http) 
    
    #Run your requests using the service object. e.g. list first 10 files: 
    results = service.files().list(maxResults=10).execute() 
    # ... etc ... Do something with results 
    

sample codeから変更されています。

GoogleドライブのリファレンスAPIは、found hereです。

GAEと他のGoogleプロダクトのAPIをリンクするのと同じ一般的な手順が必要です。カレンダー。すべてあなたのプログラムを書く最高!

関連する問題