3

過去数か月間、Google App Engineソリューションの完成に忙しかったのですが、ローカルのdev_serverとappspotの変更や違いにより、Googleが私を追い詰めてしまったことに気付きました。

シナリオ:私のアプリは、FederatedOpenID認証を使用してappspotにデプロイされます。

問題:アプリがOpenIDを使用するように構成されている場合、Googleはデータのアップロードをサポートしません。(彼らはこの問題を認識しており、バグとは見なしていません。)

数年前、ニック・ジョンソンは彼のブログにremote_apiとOpenIDの回避策を投稿しましたが、何人かの人々はそれがもはや機能しないと報告しています。

さらに、DanSandersonの著書「ProgrammingGoogleApp Engine」の最新(第2版)には、データのアップロードに関する章が含まれていません。バックアップと復元に関する章がありますが、バックアップするまでデータを復元できません。また、データが存在するまでデータをバックアップできません。

この窮地にあるのは私だけだとは信じられません。これは非常に一般的なニーズのようです。アプリでOpenIDを使用しているときに、データをアップロードするだけです。

ローカルのdev_serverPythonアプリに関するすべてがうまく機能することを覚えておいてください(appcfg.py、upload_data、remote_api、CSV yaml configsなど)が、appspotでのこの問題により、アプリをリリースできません!

何千ものレコードをAppEngineにアップロードするためのシンプルで最新の文書化されたレシピを持っている人はいますか?カスタムアップロードハンドラエンドポイント?データファイルを新しいアプリバージョンとバンドルしてから、なんとかして読んでください。CSVファイルをGoogleドライブに投稿し、タスクキューから読み取りますか?

何か案は?

4

2 に答える 2

6

回避策としてこれを試すことができます:

  1. 「通常の」Google アカウント認証で新しいアプリケーションを作成します。
  2. そのアプリケーションにデータをアップロードします。
  3. データを Google Cloud Storage にバックアップします。
  4. Google Cloud Storage から元のアプリケーションに日付を復元します。
于 2012-12-22T17:37:37.517 に答える
1

SDK 1.7.3 の時点で、google は認証方法を変更できると言っています http://code.google.com/p/googleappengine/wiki/SdkReleaseNotes。リモート API を介して初期データの読み込みを行っている間はいつでも「Google アカウント API」に戻すことができ、完了したら認証を Federated Login に戻すことができます。

于 2012-12-23T00:26:50.107 に答える