首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何从Google App Engine读取Google云存储文件

如何从Google App Engine读取Google云存储文件
EN

Stack Overflow用户
提问于 2018-02-12 12:44:08
回答 1查看 2.7K关注 0票数 2

如何打开存储在Google Cloud Storage中的文件(从App Engine)?

我正在使用Python、Flask和App Engine (灵活的环境)。文件不是公开的,存储桶属于App Engine项目,所以设置了正确的权限。

app.yaml

代码语言:javascript
运行
复制
runtime: python
env: flex
entrypoint: gunicorn -b :$PORT view:app
runtime_config:
  python_version: 3.5
env_variables:
    CLOUD_STORAGE_BUCKET: <project-xxxx>

view.py

代码语言:javascript
运行
复制
...
from google.cloud import storage 
gcs = storage.Client()

@app.route('/start_serving/<file_name>')
def start(file_name):
    WHAT TO DO HERE?

#Rest of the app

提前谢谢你。我在文档中找不到任何相关的东西。它提供了如何创建存储桶,如何上传,如何下载,如何授予权限的信息,但没有介绍如何读取。

另外,我如何在我的电脑上打开它(在运行'gcloud app deploy‘命令之前)?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-13 02:02:03

我有一个python2.7flex应用程序,在那里我使用blob.upload_from_string()上传到GCS,但它看起来有一个blob.download_as_string(),所以也许像这样的东西可以工作

代码语言:javascript
运行
复制
from google.cloud import storage

project_id = os.environ['GCLOUD_PROJECT']
CLOUD_STORAGE_BUCKET = "%s.appspot.com" % project_id

@app.route('/start_serving/<file_name>')
def start(file_name):
    gcs = storage.Client()
    bucket = gcs.get_bucket(CLOUD_STORAGE_BUCKET)
    blob = bucket.blob(file_name)
    return blob.download_as_string()
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48739671

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档