Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么azure blockid被更改?_Azure_Azure Storage - Fatal编程技术网

为什么azure blockid被更改?

为什么azure blockid被更改?,azure,azure-storage,Azure,Azure Storage,我正试图将一个大tar.gz文件上传到Azure存储中,由于Azure的限制,我必须将gzip文件分成一小部分,然后分别上传 对于它们中的每一个,我都需要生成一个blockid(由base64编码),问题是blockid在被推送到“暂存区域(未提交状态)”后会有一点变化 以下是生成块id的方法(使用base64对随机7位字符进行编码): blockid=$(cat/dev/urandom | tr-dc'a-zA-Z'|折叠-w 7 |头部-n 1 |底部64) 生成的示例如下所示: VHRkS

我正试图将一个大tar.gz文件上传到Azure存储中,由于Azure的限制,我必须将gzip文件分成一小部分,然后分别上传

对于它们中的每一个,我都需要生成一个blockid(由base64编码),问题是blockid在被推送到“暂存区域(未提交状态)”后会有一点变化

以下是生成块id的方法(使用base64对随机7位字符进行编码): blockid=$(cat/dev/urandom | tr-dc'a-zA-Z'|折叠-w 7 |头部-n 1 |底部64)

生成的示例如下所示:

VHRkS29qZgo=
ZUxXS0trVwo=
Q2JHVnlnaQo=
Z3FncFZ5Wgo=
SkZhTVhJcgo=
Rk9QaWxkTgo=
VHRkS29qgg==
ZUxXS0trwg==
Q2JHVnlnQg==
......
以下是我将blob推入服务器的方式:

  curl -X PUT -T $file -H "x-ms-date: $(date -u)" "https://hello.blob.core.windows.net/jenkins/myblob.tar.gz?comp=block&blockid=${blockid}=&sv=token"
将块推入服务器后,我可以看到块id更改如下:

VHRkS29qZgo=
ZUxXS0trVwo=
Q2JHVnlnaQo=
Z3FncFZ5Wgo=
SkZhTVhJcgo=
Rk9QaWxkTgo=
VHRkS29qgg==
ZUxXS0trwg==
Q2JHVnlnQg==
......
azure是否有任何理由更改我的区块id

比尔


Tim

您是否可以编辑您的问题并包含用于生成块id的代码?谢谢。你能提供你如何推进“集结区”的截图吗?据我所知,如果更改blob的内容,块id也会更改。我已经在我这边测试过了。嗨,请看我更新的问题,希望这次足够清楚。假设你提出的卷发请求与你在问题中包含的内容类似(除了更改帐户名等),我相信你有一个打字错误。如果您注意到您实际上在您的块id之后添加了一个额外的
=
,这里:
comp=block&blockid=${blockid}=&sv=token
。这可能是原因吗?它应该是
comp=block&blockid=${blockid}&sv=token
。我建议您使用像块ID(block1、block2、block3等)一样的自动递增,没有随机的理由。