通过简单的REST'GET'访问本地Azure blob存储

时间:2009-12-09 16:07:18

标签: visual-studio rest azure azure-storage

我正在使用Windows Azure,我只是使用Blob存储。我已将我的Blob存储设置为在其自己的解决方案文件中运行,并具有虚拟Web角色。我首先在我的开发机器上运行它,以便Azure服务启动。我已将服务配置为使用开发共享密钥和帐户名称。

当我将我的Web应用程序(在另一个解决方案中)指向本地Blob存储服务时,我遇到了一个问题。我可以将文件上传到Blob存储,我可以在本地数据库中看到记录。因此,我在web.config中输入了正确的设置。但是,我无法通过简单的Get请求访问该文件。我已经确认该容器是公开的。

我使用的URI是:

http://127.0.0.1:10000/{container-name}/{filename}.{extension}

当我使用我的生产Azure服务时,我的代码有效,那么我缺少的开发环境有什么不同吗?本地环境是否允许REST访问?

更新:我最近发现this MSDN Article描述了生产和开发存储URI之间的差异。我还在我的博客上记录了我的环境here

2 个答案:

答案 0 :(得分:9)

uri看起来有点不正确,开发存储uri的格式是:

http://<local-machine-address>:<port>/<account-name>/<resource-path>

鉴于帐户名称始终为devstoreaccount1,您的uri应为:

http://127.0.0.1:10000/devstoreaccount1/{container-name}/{filename}.{extension}

答案 1 :(得分:0)

您获得了什么样的回复或错误代码? 如果您使用IE-您可以安装Fiddler或使用IE8中内置的开发人员工具来帮助调试通信问题。 当然 - 开发结构在REST中工作!