gpt4 book ai didi

google-app-engine - 使用运行 dev_appserver 的本地主机上的客户端库保存到 GCS 时出现 404 错误

转载 作者:太空宇宙 更新时间:2023-11-03 15:22:00 27 4
gpt4 key购买 nike

我有一个使用 GCS 进行文件存储的 python GAE 应用程序。它在生产中完美运行,但在 dev_appserver 上本地运行时完全失败。

如果您能帮助查明这一点,我们将不胜感激。

谢谢。

代码:

BUCKET = '/mybucket'
filename = BUCKET + '/foo.jpg'
gcs_file = gcs.open(filename, 'w', content_type=content_type)
gcs_file.write(file)
gcs_file.close()

错误:

INFO:root:default: "POST /_ah/gcs/mybucket/foo.jpg HTTP/1.1" 404 52
ERROR 2013-11-12 07:45:05,905 webapp2.py:1552] Expect status [201] from Google Storage. But got status 404.
Path: u'/mybucket/foo.jpg'.
Request headers: {'x-goog-resumable': 'start', 'x-goog-api-version': '2', 'content-type': u'image/jpeg', 'accept-encoding': 'gzip, *'}.
Response headers: {'date': 'Tue, 12 Nov 2013 07:45:05 GMT', 'expires': 'Fri, 01 Jan 1990 00:00:00 GMT', 'content-type': 'text/plain; charset=UTF-8', 'content-length': '52', 'server': 'Development/2.0', 'cache-control': 'no-cache'}.
Extra info: None.
Traceback (most recent call last):
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/lib/webapp2-2.5.2/webapp2.py", line 1535, in __call__
rv = self.handle_exception(request, response, e)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/lib/webapp2-2.5.2/webapp2.py", line 1529, in __call__
rv = self.router.dispatch(request, response)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/lib/webapp2-2.5.2/webapp2.py", line 1278, in default_dispatcher
INFO:root:default: "POST /admin/projects HTTP/1.1" 500 3587
return route.handler_adapter(request, response)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/lib/webapp2-2.5.2/webapp2.py", line 1102, in __call__
return handler.dispatch()
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/lib/webapp2-2.5.2/webapp2.py", line 572, in dispatch
return self.handle_exception(e, self.app.debug)
File "/Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/lib/webapp2-2.5.2/webapp2.py", line 570, in dispatch
return method(*args, **kwargs)
File "/Users/me/myapp/admin.py", line 194, in post
photo = self.create_image_entity(img_object)
File "/Users/me/myapp/admin.py", line 234, in create_image_entity
self.write_file_to_gcs(filename=filename, file=img_data, content_type=img_object['mimetype'])
File "/Users/me/myapp/admin.py", line 276, in write_file_to_gcs
gcs_file = gcs.open(filename, 'w', content_type=content_type)
File "/Users/me/myapp/external/cloudstorage/cloudstorage_api.py", line 74, in open
return storage_api.StreamingBuffer(api, filename, content_type, options)
File "/Users/me/myapp/external/cloudstorage/storage_api.py", line 597, in __init__
errors.check_status(status, [201], path, headers, resp_headers)
File "/Users/me/myapp/external/cloudstorage/errors.py", line 108, in check_status
raise NotFoundError(msg)
NotFoundError: Expect status [201] from Google Storage. But got status 404.
Path: u'/mybucket/foo.jpg'.
Request headers: {'x-goog-resumable': 'start', 'x-goog-api-version': '2', 'content-type': u'image/jpeg', 'accept-encoding': 'gzip, *'}.
Response headers: {'date': 'Tue, 12 Nov 2013 07:45:05 GMT', 'expires': 'Fri, 01 Jan 1990 00:00:00 GMT', 'content-type': 'text/plain; charset=UTF-8', 'content-length': '52', 'server': 'Development/2.0', 'cache-control': 'no-cache'}.
Extra info: None.

最佳答案

我遇到了同样的问题。我正在使用 google_appengine_1.8.7(来自 zip)和 appengine-gcs-client-python-r127.zip。

端点“_ah/gcs”未在 dev_appserver 中处理。

事实上,我认为这与此更改 (https://code.google.com/p/appengine-gcs-client/source/detail?r=125) 有关,并且似乎是 GAE 1.8.7。与此更改不一致。

我使用这个 appengine-gcs-client-python-r65.zip,它现在工作正常!

关于google-app-engine - 使用运行 dev_appserver 的本地主机上的客户端库保存到 GCS 时出现 404 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19922833/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com