【问题标题】:google appengine searching buckets to find a particular "content_type" text/csvgoogle appengine 搜索存储桶以查找特定的“content_type”文本/csv
【发布时间】:2020-02-14 20:09:09
【问题描述】:

我有多个存储桶,我想找到一个存储 csv 文件的存储桶。我不知道如何搜索存储桶来找到我需要的东西。是否有一种方法可以查询存储桶以仅查找内容类型“text/csv”。最终我试图找到以“encoded_gs_file:”开头的csv文件blobkey另外,数据存储和存储之间的关系是什么?

我在 localhost 中运行的 blobstore 查看器仅显示图像的 encoded_gs_file。但我知道 csv 文件应该有一个encoded_gs_file

当我访问以下网址时:

http://localhost:8000/datastore?kind=__GsFileInfo__

我可以看到 csv 文件类型,但是当我转到这个网址时:

http://localhost:8000/datastore?kind=__BlobInfo__

csv 文件没有出现。我想如果我可以让 csv 文件出现在 ____blobInfo____ 端点中,那么我可以下载它

【问题讨论】:

    标签: google-app-engine google-cloud-platform google-app-engine-python


    【解决方案1】:

    没有将对象搜索到存储桶中的特定方法,但您可以使用不同的 API 方法进行搜索,例如使用 JSON API:

    1.列出您项目中的所有存储桶。 https://cloud.google.com/storage/docs/json_api/v1/buckets/list?apix_params=%7B%22project%22%3A%22edp44591%22%7D

    2.然后,有了桶列表,您可以列出每个桶中的所有对象 https://cloud.google.com/storage/docs/json_api/v1/objects/list

    3.一旦您拥有存储桶中的对象列表,您就可以使用您喜欢的编程语言进行过滤。

    基本上你可以对 XML API 做同样的事情,这里是对它的引用: https://cloud.google.com/storage/docs/xml-api/reference-methods

    或者使用 gsutil 工具: gsutil list :列出您项目中的所有存储桶:https://cloud.google.com/storage/docs/listing-buckets

    gsutil ls -r gs://[BUCKET_NAME]/** :列出项目中的所有对象。 https://cloud.google.com/storage/docs/listing-objects

    如果您想查看有关如何使用不同代码语言的 API 的示例,请访问文档 Cloud Storage Client Libraries https://cloud.google.com/storage/docs/reference/libraries#client-libraries-install-nodejs

    【讨论】:

    • 它给出了以下错误:"error": { "code": 401,"message": "Anonymous caller does not have storage.objects.get access
    • 你做得怎么样?你能提供更多细节吗?
    • 嘿恩里克,我尝试在浏览器 url 中输入它。我不知道如何使用密钥和 url 来获得权限
    • 能否提供您正在使用的 blobstore 查看器的名称或链接?
    • 我最近了解到,blobstore 查看器仅在本地开发中可用。我不知道谷歌为什么这样做。他们弃用了生产中的功能。有没有办法可以使用输入信息和浏览器中的键来获取存储桶信息?
    猜你喜欢
    • 2015-04-16
    • 2018-07-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多