【问题标题】:Client side data backup on HasuraHasura 上的客户端数据备份
【发布时间】:2020-08-22 07:44:19
【问题描述】:

所以问题是:我怎样才能获得客户端备份,以便用户可以将自己的数据保存到可下载的文件中,以后可以使用该文件来恢复所有数据?

关于我的堆栈的信息:

我在前端使用 React、mobx、apollo。 我在后端使用 Hasura 和 Postgresql。

我的应用程序将是多租户的,我还没有实现多租户,但可能会发生这样的情况,每个租户共享同一个 Hasura 数据库,并且tenant_id 将让他们只访问自己的数据。

数据本身建立在具有一对多关系的多个表上。所以备份本质上必须是用户全部数据的图像,包含必要的信息,以便在恢复时,所有关系都像以前一样工作。

首先我以一种天真的(或者至少我认为它很天真)的方式解决了这个问题,这意味着我在客户端添加了一个按钮来下载数据,按下按钮会导致阿波罗查询数据来自 Hasura,并将数据导出为 JSON 供客户端下载。

现在在我的脑海里,我认为有一种更可靠、更安全的方法可以做到这一点。当然,我不希望用户能够从数据库中获取整个转储,只希望用户有权访问的所有记录。

【问题讨论】:

    标签: javascript reactjs postgresql apollo hasura


    【解决方案1】:

    创建两个负责导出和导入数据的 Hasura 操作。这些操作将指向 2 个微服务,这些微服务将根据我们对数据安全/卫生的确切要求查询/改变数据库。

    【讨论】:

    • 谢谢,我还不是很精通动作或微服务,但无论如何我必须花时间学习这些,所以很高兴知道这是正确的方法。
    猜你喜欢
    • 2019-02-28
    • 1970-01-01
    • 2018-07-17
    • 1970-01-01
    • 2020-11-17
    • 1970-01-01
    • 2013-01-12
    • 1970-01-01
    • 2023-04-08
    相关资源
    最近更新 更多