如何使用azure-cli在Azure上设置blob的contentType?

时间:2015-03-03 21:25:35

标签: azure command-line

我正在尝试更新上传文件的contentType,或者至少能够使用正确的contentType重新上传文件。

在我的情况下,我正在上传css,但它默认为它提供了一个application / octet-stream的内容类型。

命令行参考并没有显示如何管理blob的属性据我所知

修改

如果你只是创建文件,你可以使用

azure storage blob create -f {file_name} -p contentType=text/css

但我还没有找到一种编辑方法。

2 个答案:

答案 0 :(得分:1)

查看源代码here,我不认为可以使用azure-cli更新blob的属性。

如果您有兴趣,可以使用Node SDK for Azure Storage并更新blob属性。例如,请查看下面的示例代码:

var AZURE = require('azure-storage');
var blobService = AZURE.createBlobService("<account name>", "<account key>");
var container = '<blob container name>';
var blob = '<blob name>';
var newContentType = '<new content type e.g. text/css>'
blobService.getBlobProperties(container, blob, function(error, result, response) {
    if (!error) {
        var contentType = result.contentType;
        var cacheControl = result.cacheControl;
        var contentEncoding = result.contentEncoding;
        var contentMD5 = result.contentMD5;
        var contentLanguage = result.contentLanguage;
        var options = {
            'contentType': newContentType,
            'cacheControl': cacheControl,
            'contentEncoding': contentEncoding,
            'contentMD5': contentMD5,
            'contentLanguage': contentLanguage,
        };
        blobService.setBlobProperties(container, blob, options, function(error, result, response) {
            if (!error) {
                console.log('Properties updated successfully!');
            } else {
                console.log(error);
            }
        });     
    } else {
        console.log(error);
    }
});

答案 1 :(得分:1)

您现在可以使用az storage blob updateAzure CLI)中的source on GitHub来设置blob属性。例如,要将名为Content-Type的容器中名为$blob的blob的$container设置为text/css

az storage blob update -c "$container" -n "$blob" --content-type text/css