我正在编写一个将在 GCE 上运行的应用程序,并使用https://code.google.com/p/google-api-go-client/ 中的 google-api-go-client /在 GCS 中存储数据。
我还有一个 GAE 应用程序正在运行,GCE 应用程序与之通信。
我可以在本地运行我的 GCE 应用程序并与实时 GCS 服务器通信并存储文件并检索它们。
现在我正在尝试将文件本地存储在 GCS 中,以便我可以运行测试环境。
我看到 devappserver 支持通过 blobstore 模拟 GCS。但是,我似乎无法弄清楚如何将我的 GCE 应用程序指向本地 devappserver 以进行 GCS 存储。
我正在使用我的 GAE 应用程序通过“goapp serve”运行 devappserver。
我曾尝试设置基本路径,结果导致 devappserver 出现 500 个错误。
service, err := storage.New(httpClient)
service.BasePath = "http://localhost:8080/_ah/gcs/"
结果
ERROR 2014-10-23 19:14:08,692 module.py:727] Request to '/_ah/gcs/b/default/o/6051711999279104' failed
Traceback (most recent call last):
File "/home/ben/go_appengine/google/appengine/tools/devappserver2/module.py", line 723, in _handle_request
return handler.handle(match, environ, wrapped_start_response)
File "/home/ben/go_appengine/google/appengine/tools/devappserver2/wsgi_handler.py", line 59, in handle
return self._wsgi_app(environ, start_response)
File "/home/ben/go_appengine/google/appengine/tools/devappserver2/gcs_server.py", line 56, in __call__
status_message = httplib.responses.get(e.args[1], '')
IndexError: tuple index out of range
INFO 2014-10-23 19:14:08,693 module.py:652] default: "GET /_ah/gcs/b/default/o/6051711999279104?alt=json HTTP/1.1" 500 -
我可以将浏览器指向此 URL
http://localhost:8080/_ah/gcs/bucket
并得到一个 XML 结果:
<ListBucketResult xmlns="http://doc.s3.amazonaws.com/2006-03-01">
<IsTruncated>False</IsTruncated>
</ListBucketResult>
我看过几篇关于在本地使用 GCS 的帖子,但我似乎无法让它正常工作。我在这里做错了吗?还是 devappserver 不支持 GCS 或者它只是它不支持的 json api?
守着一只汪
相关分类