azure-blob-storage - 如何使用 Azure Java azure-storage-blob SDK 设置内容类型

标签 azure-blob-storage azure-java-sdk

我的代码如下:

    try {
        MultipartFile file = uploadFileInfo.getUploadFile();
        InputStream inputStream = new BufferedInputStream(file.getInputStream());
        BlobProperties props = blockBlobClient.getProperties();
        blockBlobClient.upload(inputStream, file.getBytes().length);
    } catch (IOException e) {
        log.error("Unable to upload blob!", e);
        return baseResp;
    }

但是文件 contentType 是 application/octet-stream,我需要将其设置为“image/jpg”。如何使用 Java SDK 执行此操作?

最佳答案

要上传 Blob 并设置其内容类型,请使用以下方法:BlockBlobClient.uploadWithResponse 。这是示例代码(取自同一链接):

BlobHttpHeaders headers = new BlobHttpHeaders()
     .setContentType("image/jpg");
 
 Map<String, String> metadata = Collections.singletonMap("metadata", "value");
 
 byte[] md5 = MessageDigest.getInstance("MD5").digest("data".getBytes(StandardCharsets.UTF_8));
 
 BlobRequestConditions requestConditions = new BlobRequestConditions();
 Context context = new Context("key", "value");
 client.uploadWithResponse(data, length, headers, metadata, AccessTier.HOT, md5,
         requestConditions, timeout, context);

关于azure-blob-storage - 如何使用 Azure Java azure-storage-blob SDK 设置内容类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66613480/

相关文章:

用于az的azure java sdk以编程方式获取 token

azure - 使用 spring boot 在 azure 中从 v8 升级到 v12 java sdk 后无法连接到 azure-blob-storage

java - 如何检查 Azure 中应用程序网关的运行状况

azure - 使用 distcp 时,本地是否支持 wasb 协议(protocol)?

python-3.x - 使用 SAS token 将文件从 Amazon AWS s3 传输到 Azure Blob 的 python 脚本

python - 从python中的azure blob存储读取文件

azure - 如何使用 SAS 下载 Blob

image-processing - Azure Functions 的图像调整器问题

java - 使用 Azure Java SDK 或 REST API 列出存储帐户的所有快照

java - OAuth2 授权代码已兑换,请使用新的有效代码重试或使用现有的刷新 token