有谁知道将一组文件本地加载到 Java dev_appserver的模拟云存储中的好方法。
这没有用:
$ gsutil rsync gs://mybucket http://localhost:8888/mybucket
InvalidUrlError: Unrecognized scheme "http".
我愿意接受以下建议:
在没有适当数据的情况下在本地测试内容很痛苦。我试图编写一些转换来将数据加载到BigQuery(来自数据存储区备份),如果没有一些真实的数据,它将无法实现。
答案 0 :(得分:1)
“如何将我的本地dev_appserver指向Google上的非模拟存储桶”:它没有明确记录,但 在dev_appserver
和{{1}中实现}。
要验证我在说什么,首先cloudstorage
将cloudstorage的源代码添加到您的计算机上(如果您还没有,则需要安装svn checkout http://appengine-gcs-client.googlecode.com/svn/trunk/python gcs-client
,但是,这是免费的太: - 。)
然后,subversion
并查看cd gcs-client/src/cloudstorage/
。在第一个函数storage_api.py
中,docstring说:
_get_storage_api
因此,请查看On dev appserver, this instance by default will talk to a local stub
unless common.ACCESS_TOKEN is set. That token will be used to talk
to the real GCS.
,然后在第一个函数common.py
中再次查看:
参数数量: access_token:你可以通过运行'gsutil -d ls'得到一个并复制 在'Bearer'之后。
所以你有 - 在你的应用的每个条目中(最好在你的根目录中set_access_token
),导入appengine_config.py
的{{1}}模块,然后**当前和仅如果您正在使用dev_appserver [*] call
cloudstorage
使用作为参数字符串的运行'gsutil -d ls'得到的那个,就在common
之后,即在其他许多东西中你会发现类似的东西(伪造和缩短实际值...: - ):
common.set_access_token('whatever_the_token')
在这种情况下你要打电话
Bearer
[*]有很多方法可以了解您是否在Bearer xy15.WKXJQEzXPQQy2dt7qK9\r\n
,例如GAE: python code to check if i'm on dev_appserver or deployed to appspot。