首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Azure数据湖gen2 -Validating上传的文件(MD5?)

Azure数据湖gen2 -Validating上传的文件(MD5?)
EN

Stack Overflow用户
提问于 2020-05-04 04:57:25
回答 1查看 260关注 0票数 1

我需要验证我上传到ADLG2的文件,但找不到好的方法...

有一个ContentMD5属性,但我看不出为什么要更改或更新它

即使我尝试获取文件头,该属性也是不存在的HEAD headers response (即使在存储资源管理器中,该属性也存在) Property list in Storage Explorer

为什么要在Azure端自动生成它?或者一些不同的验证文件的方法?(我不想上传一个文件,然后下载并比较它们)

EN

回答 1

Stack Overflow用户

发布于 2020-05-05 04:19:22

使用REST API:

当你上传一个文件到azure data lake时,你可以分3步完成。

  1. 将文件放在ADL
  2. Patch -> action=append中的正确位置,将数据添加到blob
  3. Patch -> action=flush,保存blob

要验证是否在阶段2中添加了所有数据,您需要

在报头中添加"Content- MD5“,并使用base64编码的MD5散列

代码语言:javascript
复制
payload = "hello"
headers = {
'Content-Length': '5',
'Content-MD5': 'XUFAKrxLKna5cZ2REBfFkg==',
'Content-Type': 'text/plain'
}

  • 如果一切正常,您将收到状态:202
  • 如果MD5不正确,您将收到状态400 -请求中指定的MD5值与服务器

计算的MD5值不匹配

之后,您想要将内容添加到文件(Blob)属性"ContentMD5“中您需要做的是将MD5 base64值添加到头文件”x-ms- md5 -md5“,以便下次读取文件时可以验证内容

代码语言:javascript
复制
payload = {}
headers = {
'x-ms-content-md5': 'XUFAKrxLKna5cZ2REBfFkg=='
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61581518

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档