gpt4 book ai didi

Python App Engine 通过 Google Cloud Storage 提供文件服务

转载 作者:行者123 更新时间:2023-12-01 05:22:26 25 4
gpt4 key购买 nike

我目前使用以下代码来允许我的用户上传文件;

uploadurl = blobstore.create_upload_url('/process?session=' + session, gs_bucket_name='mybucketname')

我可以提供这样的图像;

imgurl = get_serving_url(blob_key, size=1600, crop=False, secure_url=True)

使用第一个代码片段中的方法上传内容后,blob 键包含 encoded_gs_file:,这就是它知道从 Google Cloud Service 提供服务的方式,而不是标准的 blobstore。

但是,我不确定如何提供任何其他类型的文件(例如 .pdf 或 .rtf)。我希望内容显示在浏览器中,而是作为下载发送到客户端(因此他们会看到保存文件对话框并在其上选择一个位置)计算机保存它)。

我该如何去做呢?谢谢。

最佳答案

使用 googleserving_url 仅适用于图像。

要从 blobstore 提供 pdf,您可以使用:

class DynServe(blobstore_handlers.BlobstoreDownloadHandler):

def get(self, resource):

(blob_key, extension) = resource.rpartition('.')[::2]
blob_info = blobstore.BlobInfo.get(blob_key)
if not blob_info:
logging.error('Blob NOT FOUND %s' % resource)
self.abort(404)

self.response.headers[b'Content-Type'] = mimetypes.guess_type(blob_info.filename)
self.send_blob(blob_key, save_as=blob_info.filename)

此处理程序的 webapp2 路由如下所示:

webapp2.Route(r'/dynserve/<resource:(.*)>', handler=DynServe)

服务:

<a href="/dynserve/<blob_key>.pdf">PDF download</a>

关于Python App Engine 通过 Google Cloud Storage 提供文件服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22023193/

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