将图像文件从 URI 复制或下载到 Azure Blob

Copy or Download an image file from URI to Azure Blob

我有一个图片 uri:https://api.tinify.com/output/im1c1s69phhvjjm6.jpg 这是来自在线图像缩小的结果图像 api。

我想将缩小后的图像下载到 Azure 中的 blob 容器。

我做了: var newBlockBlob = container.GetBlockBlobReference("minified-sample.jpg"); newBlockBlob.StartCopy(新 Uri(fileUrl), null, null, null);

然后发生的事情是我在容器中看到的只是一个 0 字节的图像文件。

我认为您尝试复制的图片中的 header 有问题。我相信 Content-Disposition header 是为这张图片设置的。我之所以这样说是因为当我在浏览器的地址栏中粘贴 URL 时,我没有在浏览器中显示图像,而是提示我下载图像。

要使复制操作生效,Blob 服务在请求 URL 时必须能够在响应流中读取远程文件的内容。因为 URL 请求导致下载文件,所以 Blob 服务无法读取文件的内容,因此您得到一个 0 字节的 blob。

编辑:这是我在 Google Postman

中看到的内容