【问题标题】:Mobx-persist with encryptionMobx-持久化加密
【发布时间】:2018-11-07 12:51:05
【问题描述】:

我正在使用 mobx-persist 库来持久化数据,我需要实现加密,因为我正在处理敏感数据。我知道 AsyncStorage 不支持加密,所以我的想法是使用 Realm 作为存储。

我是初学者,找不到任何可以帮助我的东西。

有没有人尝试过或有任何示例如何做到这一点?

【问题讨论】:

    标签: react-native encryption realm mobx mobx-persist


    【解决方案1】:

    是的。您可以创建新类secureStorage,实现函数(getItem、setItem、removeItem)并传递它而不是异步存储

    我用的是 react-native-sensitive-info,你可以随便用

    import SInfo from 'react-native-sensitive-info';
    
    export const setItem = (key: string, value: string) => {
      return new Promise(async (resolve, reject) => {
        try {
          await SInfo.setItem(key, value, options);
          resolve(null);
        } catch (e) {
          reject(e);
        }
      });
    };
    
    export const getItem = (key: string) => {
      return new Promise(async (resolve, reject) => {
        try {
          const result = await SInfo.getItem(key, options);
          resolve(result);
        } catch (e) {
          reject(e);
        }
      });
    };
    
    export function removeItem(key: string) {
      return new Promise(async (resolve, reject) => {
        try {
          await SInfo.deleteItem(key, options);
          resolve(null);
        } catch (err) {
          reject(err);
        }
      });
    }
    
    import * as SecureStorage from 'your-secure-storage';
    
    const hydrate = create({
      storage: SecureStorage,
      jsonify: true,
    });
    

    只需将 SInfo 替换为领域

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-12-18
      • 1970-01-01
      • 1970-01-01
      • 2021-11-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多