【问题标题】:Storing and Retrieving images from Azure Blob Storage + SQL从 Azure Blob Storage + SQL 存储和检索图像
【发布时间】:2016-08-23 23:04:30
【问题描述】:

前几天我问过这个问题: Save base64 image to mobile services SQL or Blob Storage?

我决定使用 Blob Storage 来存储我的应用程序的图片。在网上搜索我已经看到了很多关于如何存储图像的教程,但没有看到如何检索。由于这些教程,我有很多问题,所以我将离开我的应用程序需要做的事情。

到这里

我正在构建一个应用程序,用户可以在其中标记地点、为这些地点拍照并存储在云中,以便其他人可以搜索并查看说明、图像和所有内容。

标记地点时,该人可以拍摄 3 张该地点的照片以保存该地点,并且必须保存该人的头像(因此最多可以保存 4 张照片,必须为 1 张)。

因此,在保存时,我需要将文本数据存储在 SQL 数据库(我使用移动服务自动创建),并将图片(base64)保存在与该位置有某种关系的 blob 中,因此当用户搜索地点并希望看到那个地点,云将来自 SQL 的数据和与地点匹配的 Blob 中的图片发送给用户。

类似这样的: Saving schema

在检索时,我可以使用与数据一起保存的 id 来检索完整的位置。 我正在使用 JavaScript 背景、Ionic Framework、Angular 和 Cordova(完整包)。

谁能给我一盏灯? 谢谢

【问题讨论】:

  • 抱歉,您的问题到底是什么?我认为您回答了自己的问题,使用 id 进行检索,然后使用 data:image/gif;base64, 之类的东西作为 img 中的 src 字符串的前缀

标签: android azure ionic-framework azure-mobile-services azure-blob-storage


【解决方案1】:

我认为您可以在 SQL 中创建 2 个表,一个用于用户,一个用于地点,其中包含一些属性,例如用户名、地名、描述等。

在您的 Blob 存储中,您可以拥有 1 + N 个容器。

1 个用户头像的容器,您可以使用用户的 id 作为 blob 名称。这样,您可以在登录时直接从 blob 中检索他/她的头像(因为此时您拥有用户 ID)。我建议您将此容器标记为“公共”,并为 blob 的 url 呈现图像,而不是检索到您的后端服务并发送到您的应用程序。

您可能还需要每个地点的容器,地点 id 作为容器名称。然后,您可以在从此容器中选择一个地点时检索图片(容器名称是地点 id)。

希望这会有所帮助,

【讨论】:

    猜你喜欢
    • 2015-11-21
    • 2020-03-12
    • 1970-01-01
    • 2022-11-02
    • 2018-11-21
    • 2018-04-30
    • 1970-01-01
    • 2021-04-24
    • 2013-06-28
    相关资源
    最近更新 更多