Google App Engine download_data身份验证错误

时间:2012-09-10 19:56:41

标签: google-app-engine go

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

$ 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. 我该如何解决这些问题?
  7. 编辑: 塞巴斯蒂安亲切地指出了我正确的方向,但我现在有这个错误:

    $ 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
    

2 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分:0)

Go remote_api支持中存在一个小错误。要解决此问题,您可以添加相关索引,也可以使用虚拟Python版本来下载数据。它应该在将来的版本中修复。