如何获取 ADLS Gen2 中存储的文件的 MD5?

2024-06-01

我通过 sFTP 将每日文件接收到 ADLS gen 2 存储帐户。我需要通过检查 ADLS gen2 中存储的文件的 MD5 来验证文件。

我尝试使用 BLOB API ,目前它不支持 ADLS gen2。如果文件存储在 Blob 存储中,我可以从 Blob 属性获取内容 MD5。

有人可以帮助如何从 ADLS gen 2 获取内容 MD5 吗?


如您所知,目前还不支持 Blob api,但您可以看一下Data Lake Storage Gen2 rest api -> 路径 - 获取属性 https://learn.microsoft.com/en-us/rest/api/storageservices/datalakestoragegen2/path/getproperties,可用于获取 ADLS Gen2 中存储的文件的属性。

这是一个示例代码(请注意,我使用附加到 api url 的 sas 令牌):

using System;
using System.Net;

namespace ConsoleApp3
{
    class Program
    {
        static void Main(string[] args)
        {
            string sasToken = "?sv=2018-03-28&ss=b&srt=sco&sp=rwdl&st=2019-04-15T08%3A07%3A49Z&se=2019-04-16T08%3A07%3A49Z&sig=xxxx";
            string url = "https://xxxx.dfs.core.windows.net/myfilesys1/app.JPG" + sasToken;
            var req = (HttpWebRequest)WebRequest.CreateDefault(new Uri(url));
            req.Method = "HEAD";
            var res = (HttpWebResponse)req.GetResponse();

            Console.WriteLine("the status code is: "+res.StatusCode);

            var headers = res.Headers;
            Console.WriteLine("the count of the headers is: "+headers.Count);
            Console.WriteLine("*********");
            Console.WriteLine();

            //list all the properties if you don't know which correct format of property.
            foreach (var h in headers.Keys)
            {
                Console.WriteLine(h.ToString());
            }
            Console.WriteLine("*********");
            Console.WriteLine();

            //take the Content-Type property for example.
            var myheader = res.GetResponseHeader("Content-Type");
            Console.WriteLine($"the header Content-Type is: {myheader}");

            Console.ReadLine();
        }
    }
}

Result:

如果您不知道如何生成 sas 令牌,您可以导航到 azure 门户 -> 您的存储帐户,然后按照下面的屏幕截图操作:

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何获取 ADLS Gen2 中存储的文件的 MD5? 的相关文章

随机推荐

  • WinRT 中的数据触发器?

    我能够找到事件触发 http msdn microsoft com en us library windows apps windows ui xaml eventtrigger 28v VS 85 29 aspx然而 在 WinRT 参考
  • 导出返回类的函数时出错:导出的变量具有或正在使用私有名称

    我收到错误 错误 TS4025 导出的变量 UserApiClientModule 具有或正在使用私有名称 UserApiClient 在下面的代码中 export var UserApiClientModule fromConfigura
  • 在 AWS Lambda 中共享代码

    在 AWS Lambda 函数之间共享代码的首选方式是什么 我有这样的结构 functions a 节点模块 index js 包 json b 节点模块 index js 包 json c 节点模块 index js 包 json 这让每
  • c# Asp.NET MVC 使用FileStreamResult下载excel文件

    我需要构建一个方法 它将接收模型 从中构建excel 构建和接收部分完成没有问题 然后使用内存流导出 让用户下载它 不将其保存在服务器上 我是 ASP NET 和 MVC 的新手 所以我找到了指南并将其构建为教程项目 public File
  • 将多行合并为一行并根据行数附加列

    我正在尝试将同一个表的多行合并为一个 我有一个像这样的示例表 Col1 Col2 Col3 Col4 Col5 Col6 1 BH1 CB 12 CC CC Conveyor Mal 1 BH1 CB 104 ZC ZC Full Emp
  • WPF 从主线程以外的其他线程截屏

    我有一个线程用于侦听 WPF 应用程序的命令 如果 WPF 应用程序收到截取屏幕截图的命令 则任务将移交给 screenshotService 我在互联网上的某个地方找到了一些代码来截取屏幕截图 似乎可以工作 但我还没有想清楚 我无法从另一
  • OpenJDK 版本控制

    上下文 我想确保我们系统上安装的 Java 不受 CVE 2022 21449 的影响 java version 给出 openjdk version 11 0 7 2020 04 14 LTS OpenJDK Runtime Enviro
  • 按名称包含在单个对象中的多个列对 data.frame 进行排序?

    我想排序一个data frame由多列组成 理想情况下使用基础 R 无需任何外部包 尽管如果有必要 就这样吧 读过如何按列对数据框进行排序 https stackoverflow com questions 1296646 how to s
  • 将 RSA 密钥从 BigIntegers 转换为SubjectPublicKeyInfo 形式

    WARNING 最初的问题是关于 PKCS 1 编码密钥 而问题中的实际示例需要SubjectPublicKeyInfo X 509 编码密钥 我目前正致力于在 java 中从头开始实现 RSA 算法 特别是密钥生成方面 现在我的代码可以给
  • SQL Group BY,每个组的前 N ​​个项目

    我有一个 SQL 查询 可以获取给定商店中销量最高的 5 件商品 SELECT TOP 5 S UPCCode SUM TotalDollarSales FROM Sales S WHERE S StoreId 1 GROUP BY S U
  • 如何在Python和Selenium中通过标签名称或id获取元素[重复]

    这个问题在这里已经有答案了 我正在尝试使用 Python 和 Selenium 获取输入 但它向我显示错误 我该如何解决这个错误 inputElement send keys getStock getStocklFunc 0 Error i
  • 如何为 Jackson 编写一个包罗万象的(反)序列化器

    当您提前知道类型时 编写自定义序列化器非常容易 例如 MyType一个人可以写一个MyTypeSerializer extends StdSerializer
  • HttpClient 像浏览器一样请求

    当我通过 HttpClient 类调用网站 www livescore com 时 我总是收到错误 500 可能服务器阻止了来自 HttpClient 的请求 1 还有其他方法可以从网页获取html吗 2 如何设置标题来获取html内容 当
  • 在可编辑的QSqlQueryModel中实现setEditStrategy

    这是后续这个问题 https stackoverflow com questions 49752388 editable qtableview of complex sql query 在那里 我们创建了 QSqlQueryModel 的可
  • 使用 Flutter Flavor 运行调试?

    我正在尝试在 Visual Studio 代码上为我的 flutter 应用程序运行调试模式 单击 运行和调试 但是当我这样做时 我面临以下问题 The Xcode project defines schemes release priva
  • Enzyme - 测试嵌套组件是否正确呈现

    我正在尝试测试当通过简单的布尔值更新状态时 在父组件中其子组件是否正确呈现 在父组件下面 class Parent extends Component render const isReady this state const props
  • 当 Cortex-M3 出现硬故障时如何保留堆栈跟踪?

    使用以下设置 基于 Cortex M3 的 C gcc arm 交叉工具链 https launchpad net gcc arm embedded 使用 C 和 C FreeRtos 7 5 3 日食月神 Segger Jlink 与 J
  • 如何在Intershop7中注册ORMObjectListener

    我们在网上商店实现中实现了几个自定义 ORM 对象 这些对象引用 依赖 Intershop Product 系统对象 当用户尝试删除后台中的某个产品时 会导致问题 因为对该产品的引用可能仍然存在于我们的自定义对象中 当然 删除从我们的自定义
  • 如何在android中录制音频时暂停背景音乐

    我正在 Android 中开发一个音频记录应用程序 因此 如果设备音乐播放器中已播放任何背景音乐 则应在开始录制之前暂停该背景音乐 并且每当录制停止或暂停时 背景音乐都应恢复 播放录制的音频时也应该如此 有人可以帮我解决这个问题吗 提前致谢
  • 如何获取 ADLS Gen2 中存储的文件的 MD5?

    我通过 sFTP 将每日文件接收到 ADLS gen 2 存储帐户 我需要通过检查 ADLS gen2 中存储的文件的 MD5 来验证文件 我尝试使用 BLOB API 目前它不支持 ADLS gen2 如果文件存储在 Blob 存储中 我