Mobile 使用azure移动服务如何从专用容器下载blob?

Mobile 使用azure移动服务如何从专用容器下载blob?,mobile,service,azure,blob,Mobile,Service,Azure,Blob,我正在使用Azure移动服务为web应用程序存储图像。 我已成功地将图像上载到一个专用容器。我遵循了本介绍性指南()中的逻辑,即,当将文件上载到数据库时,SAS由在表中插入记录时调用的节点脚本生成 从移动应用程序中使用此方法的原因之一是,存储密钥不会存储在应用程序源本身中 符合这个想法,我现在正在努力寻找一个如何下载图片的例子 也许我应该更新同一个表的read函数,让它返回一个SAS,可以用来访问映像 这听起来合理吗,还是更好的方法? 非常感谢您的帮助。我觉得您走的方向是对的。如果您将图像存储在

我正在使用Azure移动服务为web应用程序存储图像。 我已成功地将图像上载到一个专用容器。我遵循了本介绍性指南()中的逻辑,即,当将文件上载到数据库时,SAS由在表中插入记录时调用的节点脚本生成

从移动应用程序中使用此方法的原因之一是,存储密钥不会存储在应用程序源本身中

符合这个想法,我现在正在努力寻找一个如何下载图片的例子

也许我应该更新同一个表的read函数,让它返回一个SAS,可以用来访问映像

这听起来合理吗,还是更好的方法?
非常感谢您的帮助。

我觉得您走的方向是对的。如果您将图像存储在专用容器中,并希望移动设备将其读回,那么是的,您将希望生成一个SAS,允许读取图像并将其读回设备。然后,设备代码可以使用该SAS URL直接对BLOB存储进行调用以检索映像

这仅适用于您希望容器私有的情况。如果容器是公共的,那么只返回URL(就像您链接到的文章中的URL一样)就可以了

这还取决于你对图像的关注程度。例如,假设您为每个用户创建了一个容器。如果容器上有一个共享访问签名策略,并且过期日期非常遥远,那么从技术上讲,有些人仍然需要SAS的URL来查看它,但是您可以创建该SAS并像示例一样存储它。然后,当移动应用程序从您的服务读取数据并直接访问BLOB时,可以为其提供URL,而无需创建额外的SAS。在我看来,这个选项只有在图像不会出现很长时间的情况下才起作用,或者你不在乎是否有人从网络流量中嗅出了URL,他们可以访问它

如果您希望它相当安全,并且不知道图像会存在多长时间,那么您应该按照您所述的方法,在应用程序读取相关表数据时获取SAS进行读取。SAS的有效期可能很短,移动设备可以缓存结果