从Google App Engine应用程序下载数据

时间:2011-05-13 01:52:54

标签: google-app-engine google-cloud-datastore

http://code.google.com/appengine/docs/python/tools/uploadingdata.html

这里解释了如何从gAE应用程序下载数据,

首先要做的是设置remote_api。      批量加载器工具使用remote_api与App Engine上运行的应用程序进行通信,remote_api是App Engine运行时环境中包含的请求处理程序,允许具有适当凭据的远程应用程序远程访问数据存储。有两种方法可以安装remote_api:自动使用builtins指令,或者手动使用url指令。

我使用builtins指令启用它: 我相应地更改了app.yaml

builtins:
-  remote_api: on

给定该指令为remote_api找到“include.yaml”文件,并将请求处理程序映射到/ _ah / remote_api。只有应用程序的管理员才能访问此URL。

但我从未遇到过include.yaml

之后我尝试使用那里给出的命令下载数据

appcfg.py download_data --application=<app-id> --url=http://<appname>.appspot.com/[remote_api_path] --filename=<data-filename>

我收到错误说许可被拒绝,我很困惑。我也无法使用“create_bulkloader_config”命令,得到同样的错误,我很困惑,谢谢

3 个答案:

答案 0 :(得分:1)

您是否在为自己的应用使用开放式ID /联盟登录?远程API不适用于开放ID,但这里有一个解决方法:

http://blog.notdot.net/2010/06/Using-remote-api-with-OpenID-authentication

答案 1 :(得分:0)

替换

builtins:
-  remote_api: on

使用

- url: /remote_api
      script: $PYTHON_LIB/google/appengine/ext/remote_api/handler.py
      login: admin

答案 2 :(得分:0)

您应该以管理员用户身份运行命令行。您获得的权限被拒绝错误是指appcfg脚本无法访问本地文件。