Azure setProperties不与Grunt一起使用

时间:2013-07-12 23:47:36

标签: javascript azure gruntjs

使用MS Azure Node sdk,我正在尝试更改一个文件的缓存属性。这适用于从命令行运行节点:

var azure = require('azure');
var containerName = '2013-07-10-r49';
var blobName = 'index.html';
var blobService = azure.createBlobService();

blobService.setBlobProperties(containerName,blobName,{cacheControlHeader: 'xxxxx'},function(err,setResponse)
{
    console.log('test');
});

这是一个独立的节点任务。但在Grunt中,这不起作用:

grunt.registerMultiTask('setAzureProperty','Mainly used to update cache value for index.html', function()
{
    var azure = require('azure');
    var containerName = '2013-07-10-r49';
    var blobName = 'index.html';
    var blobService = azure.createBlobService();

    blobService.setBlobProperties(containerName,blobName,{cacheControlHeader: 'xxxxxx'},function(err,setResponse)
    {
        var inspect = require('eyes').inspector();
        inspect(setResponse);
    });
});

任何建议。它只是默默无闻。

1 个答案:

答案 0 :(得分:0)

需要将其设置为异步任务。不知道为什么,因为我只想要价值集。但是,通过告诉grunt,它是任务定义开始时的异步任务:

var done = this.async();

然后在完成时告诉咕噜声已经完成了:

done(true);

有效。