当前位置: 首页 > 面试题库 >

如何使用App Engine SDK服务cloudstorage文件

熊烨
2023-03-14
问题内容

在应用程序引擎中,我可以使用应用程序的默认存储桶来提供诸如pdf之类的cloudstorage文件:

http://storage.googleapis.com/<appid>.appspot.com/<file_name>

但是,如何在不使用blob_key的情况下在SDK中提供本地cloudtorage文件?

我这样写默认存储桶:

gcs_file_name = '/%s/%s' % (app_identity.get_default_gcs_bucket_name(), file_name)
with gcs.open(gcs_file_name, 'w') as f:
    f.write(data)

SDK中默认存储桶的名称=’app_default_bucket’

在SDK数据存储区中,我有一个种类: GsFileInfo 显示:文件名:/app_default_bucket/example.pdf

更新和解决方法:您可以获取非图像文件(例如css,js和pdf)的服务网址。

gs_file = '/gs/%s/%s/%s' % (app_identity.get_default_gcs_bucket_name(), folder, filename)
serving_url = images.get_serving_url(blobstore.create_gs_key(gs_file))

问题答案:

更新,我发现此功能可使用SDK来提供cloudtorage文件:

此功能尚未记录。

http://localhost:8080/_ah/gcs/app_default_bucket/filename

这意味着我们不需要img服务网址来提供非图片,如下所示!

为了为default_bucket中的图像,css,js和pdf之类的cloudtorage文件创建e服务url,我将以下代码用于测试(SDK)和GAE生产:

重要提示:images.get_serving_url()也可用于SDK中的非图片!

在SDK中,您还需要Blobstore读取Blob并为cloudstorage对象创建服务网址。

我还添加了用于在SDK和GAE产品中读取,写入和上传cloudstorage blob的代码。

该代码可以在这里找到。



 类似资料:
  • 我从Apache切换到Nginx,使用apache,皮肤文件夹中的所有静态文件(图像、css、javascript)都直接由Apache提供服务。 示例: 我读了一些关于Nginx和Plone的文档,但我没有看到。下面是Plone.orgconf的例子:https://github.com/plone/plone-org-nginx/blob/master/nginx.conf 所以,我的问题是:

  • 问题内容: 我需要将文件从服务器下载到桌面。(UBUNTU 10.04)我没有Web访问服务器,只是ssh。 如果有帮助,我的操作系统是Mac OS X和iTerm 2作为终端。 问题答案: 在您的终端中,键入: 相应地替换用户名,主机,远程文件名和本地目录。 如果要访问EC2(或其他需要使用私钥进行身份验证的服务),请使用以下选项:

  • 我花了几个小时试图将文件上载到本地服务器文件夹,但比预期的困难,请帮助。 在我的前端下面插入文件 下面是我的控制器

  • 问题内容: 以下是我用于将文件上传到服务器的代码。但是,即使经过几次尝试,甚至添加了严格模式,我都遇到了网络异常。 我是Android的新手,不知道如何使用异步任务,许多人建议您使用这种异步网络操作。谁能告诉我代码中哪里有错误以及应该在哪里使用异步任务? 问题答案: 有关更多信息,请参考此链接 http://vikaskanani.wordpress.com/2011/01/29/android-

  • 我一直在研究Quarkus,以及如何在保持现有JSP基础的同时使用它进行新的开发。 在这一点上,将我们所有的JSP重写为servlet和html文件是不合理的。这是我们最终可以射击的,但现在,不。所以,我一直在尝试配置Quarkus,使其能够为我的JSP文件提供服务。 现在这里有一个警告,我们的JSP非常古老,并且是由那些基本上不了解JSP技术的人编写的。它们大多是scriplet代码,围绕scr