代码之家  ›  专栏  ›  技术社区  ›  YeahStu

通过简单的休息“get”访问本地Azure Blob存储

  •  3
  • YeahStu  · 技术社区  · 15 年前

    我正在使用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 回复  |  直到 13 年前
        1
  •  9
  •   Nigel Sampson    15 年前

    该URI看起来有点不正确,开发存储URI的格式为:

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

    如果帐户名始终为devstoreaccount1,则您的URI应为:

    http://127.0.0.1:10000/devstoreaccount1/{container-name}/{filename}.{extension}
    
        2
  •  0
  •   Stratton    15 年前

    您得到什么样的响应或错误代码? 如果您使用的是IE,那么您可以安装fiddler或使用IE8中内置的开发工具来帮助调试通信问题。 当然-开发结构在休息时工作!