2 rrtttuo rrtttuo 于 2015.05.28 15:08 提问

通过url判断Azure存储的类型

各位大神好哇!!!
我怎么能够通过url来判断我的blob的类型?
有没有什么办法吗?
谢谢啦哇!!!!

2个回答

caozhy
caozhy   Ds   Rxr 2015.05.28 15:09

这个没有办法。url仅仅是guid,要判断,你必须是账户的管理员,用管理api去获取。

WillShaoMSFT
WillShaoMSFT   Rxr 2015.05.28 16:17

如果你的blob是可以通过url来访问的话,我想我们可以通过http请求来得到类型,在返回的head中,我用fiddler抓取了这部分信息,详细请看下图。


x-ms-blob-type得到了我们blob的类型,code如下:

 public static ICloudBlob GetBlob(Uri uri)
         {
             HttpWebRequest request = HttpWebRequest.Create(uri) as HttpWebRequest;
             request.Method = "GET";
             var response = request.GetResponse();
             if (response.Headers["x-ms-blob-type"] == "BlockBlob")
             {
                 return new CloudBlockBlob(uri);
             }
             else if (response.Headers["x-ms-blob-type"] == "PageBlob")
             {
                 return new CloudPageBlob(uri);
             }
             throw new Exception("Invalid Blob type");
         }

Reagrds,
Will
如果您想进一步了解Windows Azure, Windows Azure 官网欢迎您的访问

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!