如何使用AppEngine的数据存储区管理员:复制到另一个应用程序功能

Nic*_*kis 20 google-app-engine

我最近启用了AppEngine的数据存储管理员.我不明白如何将我的数据复制到另一个应用程序的说明.

注意:目标应用程序必须启用remote_api,并且必须在其HTTP_X_APPENGINE_INBOUND_APPID列表中包含此应用程序的ID.

警告此应用程序的数据是可写的.当被复制的数据是只读时,我们只能保证一致的副本.注意:不会复制Blob(二进制数据).

要启用remote_api,我在app.yaml中包含以下内容:

 builtins:
    - remote_api: on
Run Code Online (Sandbox Code Playgroud)

我不知道HTTP_X_APPENGINE_INBOUND_APPID是什么,谷歌搜索没有结果....任何想法? 替代文字 替代文字

小智 7

数据存储区复制功能目前仅适用于Python应用程序.

如果您使用GAE for Java,则必须执行以下步骤:

注意:假设您正在从应用example1.appspot.com程序复制到应用程序example2.appspot.com并且您的Java WEB-INF应用程序文件夹位于/Users/admin/src/main/webapp/WEB-INF

  1. 下载Python SDK https://developers.google.com/appengine/downloads#Google_App_Engine_SDK_for_Python
  2. 运行Python SDK
  3. WEB-INF文件夹中创建一个新文件:app.yaml
  4. WEB-INF文件夹中创建一个新文件:appengine_config.py
  5. 部署新版本(在终端中运行): appcfg.py -A example2 update **/Users/admin/src/main/webapp/WEB-INF
  6. 转到您的example1数据存储管理员视图并放置:datastore-admin.example2.appspot.com/_ah/remote_api

app.yaml中:

application: example2
version: datastore-admin
runtime: python
api_version: 1


builtins:
- remote_api: on
- datastore_admin: on
Run Code Online (Sandbox Code Playgroud)

appengine_config.py:

remoteapi_CUSTOM_ENVIRONMENT_AUTHENTICATION = (
    'HTTP_X_APPENGINE_INBOUND_APPID', ['example1'])
Run Code Online (Sandbox Code Playgroud)