【问题标题】:Google App Engine download_data authentication errorGoogle App Engine download_data 身份验证错误
【发布时间】:2012-09-10 19:56:41
【问题描述】:

我已经阅读了很多关于此的问题,但没有找到有效的解决方案:(

$ appcfg.py download_data --url=http://THING.appspot.com/_ah/remote_api --filename=backup1 .
08:47 PM Application: THING
08:47 PM Downloading data records.
[INFO    ] Logging to bulkloader-log-20120910.204726
[INFO    ] Throttling transfers:
[INFO    ] Bandwidth: 250000 bytes/second
[INFO    ] HTTP connections: 8/second
[INFO    ] Entities inserted/fetched/modified: 20/second
[INFO    ] Batch Size: 10
[INFO    ] Opening database: bulkloader-progress-20120910.204726.sql3
[INFO    ] Opening database: bulkloader-results-20120910.204726.sql3
[INFO    ] Connecting to THING.appspot.com/_ah/remote_api
[INFO    ] Authentication Failed

所以我有几个关于发生了什么的问题:

  1. 为什么它不询问我的密码,而在我所见过的几乎所有其他问题中,它都会询问我的密码?是因为我已经上传了新版本的应用并登录了吗?
  2. 为什么有些人必须将 application='s~THING' 放在命令行中(对我没有帮助)。
  3. 我使用 gmail 地址作为我的管理员,所以大概这意味着它与其他类似问题的答案中给出的任何 OpenID 错误无关?
  4. 我的 app.yaml 中有 builtins: - remote_api: on(在此目录中 - 因此是“.”,对吗?),我需要放入处理程序吗?
  5. /_ah/remote_api 的请求转到我的主 ("/.*") 处理程序!这是问题的原因吗?
  6. 如何解决这些问题?

编辑: Sebastian 好心地为我指出了正确的方向,但我现在遇到了这个错误:

$ appcfg.py download_data --application='s~THING' --url=http://THING.appspot.com/_ah/remote_api --filename=backup1 --kind=Article .
09:47 PM Application: s~THING (was: THING)
09:47 PM Downloading data records.
[INFO    ] Logging to bulkloader-log-20120910.214744
[INFO    ] Throttling transfers:
[INFO    ] Bandwidth: 250000 bytes/second
[INFO    ] HTTP connections: 8/second
[INFO    ] Entities inserted/fetched/modified: 20/second
[INFO    ] Batch Size: 10
[INFO    ] Opening database: bulkloader-progress-20120910.214744.sql3
[INFO    ] Opening database: bulkloader-results-20120910.214744.sql3
[INFO    ] Connecting to THING.appspot.com/_ah/remote_api
[INFO    ] Downloading kinds: ['Article']
.[ERROR   ] [WorkerThread-1] WorkerThread:
Traceback (most recent call last):
  File "/home/me/google_appengine/google/appengine/tools/adaptive_thread_pool.py", line 176, in WorkOnItems
    status, instruction = item.PerformWork(self.__thread_pool)
  File "/home/me/google_appengine/google/appengine/tools/bulkloader.py", line 764, in PerformWork
    transfer_time = self._TransferItem(thread_pool)
  File "/home/me/google_appengine/google/appengine/tools/bulkloader.py", line 1170, in _TransferItem
    self, retry_parallel=self.first)
  File "/home/me/google_appengine/google/appengine/tools/bulkloader.py", line 1471, in GetEntities
    results = self._QueryForPbs(query)
  File "/home/me/google_appengine/google/appengine/tools/bulkloader.py", line 1442, in _QueryForPbs
    raise datastore._ToDatastoreError(e)
Error: API error 4 (datastore_v3: NEED_INDEX): no matching index found.
[INFO    ] An error occurred. Shutting down...
[ERROR   ] Error in WorkerThread-1: API error 4 (datastore_v3: NEED_INDEX): no matching index found.

[INFO    ] Have 10 entities, 0 previously transferred
[INFO    ] 10 entities (12985 bytes) transferred in 1.6 seconds

【问题讨论】:

  • 您是否部署了启用了内置 remote_api 的版本?你能发布你的 app.yaml 文件吗?
  • remote_api 已开启,但我认为 go GAE 运行时不支持这些功能
  • 您是否按照此处列出的步骤进行操作developers.google.com/appengine/docs/go/tools/…
  • 不,不,我没有……我在看python的……谢谢。好的,新错误:)
  • 你可以试试不带最后一个点,也不带 kind 选项。

标签: google-app-engine go


【解决方案1】:

我仍然有错误(见上文),但https://developers.google.com/appengine/docs/go/tools/uploadingdata 似乎涵盖了基础知识 正如评论中建议的那样。感谢那。 如果我修复其他错误,我会更新它。

【讨论】:

【解决方案2】:

Go remote_api 支持中有一个小错误。要解决它,您可以添加相关索引,或使用虚拟 Python 版本下载数据。它应该在未来的版本中得到修复。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-30
    • 2012-07-18
    • 1970-01-01
    • 1970-01-01
    • 2011-12-25
    • 1970-01-01
    相关资源
    最近更新 更多