代码之家  ›  专栏  ›  技术社区  ›  rae1

如何在使用.NET AWS SDK从AWS S3检索时筛选、模式匹配文件?

  •  1
  • rae1  · 技术社区  · 5 年前

    当使用 ListObjects 请求(.NET AWS SDK),是否有一种方法只列出密钥与给定模式匹配的文件?或者更广泛地说,有没有一种方法可以从 S3 基于密钥使用来自.NET AWS SDK的任何请求类型?

    我知道 --query param, available on AWS CLI 但我在.NET上找不到等效的方法。

    我正在寻找一种运行查询的方法 服务器端 以便 列表对象 返回与键集匹配的模式。我想避免检索所有文件 and then 过滤它们。

    1 回复  |  直到 5 年前
        1
  •  1
  •   bwest    5 年前

    AWS CLI使用 JMESPath 用于查询表达式。有一个.NET端口被调用 JmesPath.NET 它与相同的API兼容,并且维护良好。可以使用sdk检索结果集,然后使用jmespath.net表达式对其进行筛选。它可以作为 NuGet package 也是。

    这个 --query cli上的param过滤输出上的结果集,类似于jmespath.net的情况。它不会影响API调用返回的内容。唯一可用于减少结果集的请求参数是 prefix delimiter 它按照文件夹结构在文件存储引擎中的逻辑进行分组。除非您的用例可以由这些参数来处理,否则您将被困在输出端的过滤中。