3

虽然过去几个月我一直忙于完成我的 Google App Engine 解决方案,但我现在发现由于本地 dev_server 和 apppot 之间的变化和差异,Google 让我陷入了困境。

场景:我的应用部署在带有联合 OpenID 身份验证的 apppot 上。

问题:当应用程序配置为使用 OpenID 时,Google 不支持数据上传。(他们知道这个问题,不认为这是一个错误。)

几年前,尼克约翰逊在他的博客上发布了一个remote_api 和 OpenID 解决方法,但有几个人报告它不再有效。

此外,Dan Sanderson 的《Programming Google App Engine》一书的最新(第 2 版)不再包含有关数据上传的章节。有备份和恢复的章节,但是我要备份才能恢复数据,要等数据存在才能备份!

我不敢相信我是这个困境中唯一的人——它似乎应该是一个非常普遍的需求——我只需要在我的应用程序使用 OpenID 时上传数据。

请记住,关于我的本地 dev_server Python 应用程序的所有内容都运行良好(appcfg.py、upload_data、remote_api、CSV yaml 配置等),但是 apppot 上的这个问题阻止了我发布我的应用程序!

有没有人有一个简单的、最新的、记录在案的方法来将数千条记录上传到应用程序引擎?自定义上传处理程序端点?将数据文件与新的应用程序版本捆绑在一起,然后以某种方式读取它们?将 CSV 文件发布到 Google Drive 并从任务队列中读取它们?

有任何想法吗?

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 开始,谷歌表示您可以更改身份验证方法 http://code.google.com/p/googleappengine/wiki/SdkReleaseNotes。在通过远程 api 进行初始数据加载时,您始终可以恢复为“google 帐户 api”,然后在完成后将身份验证设置回联合登录。

于 2012-12-23T00:26:50.107 回答