You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

设置BlobHttpHeaders导致PNG图片上传后损坏?

问题描述

我正在使用Docker运行的Azurite向本地Blob存储上传PNG图片,本地文件大小为167.08 KiB:

  • 不设置请求头上传时,Blob大小与本地一致,但Content Type被设为application/octet-stream,图片无法正常展示
  • 设置ContentType为image/png后,Blob大小变为167.06 KiB,文件损坏无法被图片编辑器打开

设置ContentType后文件损坏的代码(Blob大小167.06 KiB)

public async Task<Uri> Upload(string container, string destination, MemoryStream stream)
{
  stream.Position = 0;
  var blob = this.Blob(container, destination);

  var headers = new BlobHttpHeaders() { ContentType = "image/png" };
  var uploadOptions = new BlobUploadOptions() { HttpHeaders = headers };

  await blob.UploadAsync(stream, uploadOptions);
  return blob.Uri;
}

Content Type不正确但文件正常的代码(Blob大小167.08 KiB)

public async Task<Uri> Upload(string container, string destination, MemoryStream stream)
{
  stream.Position = 0;
  var blob = this.Blob(container, destination);
  await blob.UploadAsync(stream);
  return blob.Uri;
}

内容的提问来源于stack exchange,提问作者Santi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 04:45:55