【发布时间】:2018-11-07 12:51:05
【问题描述】:
我正在使用 mobx-persist 库来持久化数据,我需要实现加密,因为我正在处理敏感数据。我知道 AsyncStorage 不支持加密,所以我的想法是使用 Realm 作为存储。
我是初学者,找不到任何可以帮助我的东西。
有没有人尝试过或有任何示例如何做到这一点?
【问题讨论】:
标签: react-native encryption realm mobx mobx-persist
我正在使用 mobx-persist 库来持久化数据,我需要实现加密,因为我正在处理敏感数据。我知道 AsyncStorage 不支持加密,所以我的想法是使用 Realm 作为存储。
我是初学者,找不到任何可以帮助我的东西。
有没有人尝试过或有任何示例如何做到这一点?
【问题讨论】:
标签: react-native encryption realm mobx mobx-persist
是的。您可以创建新类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 替换为领域
【讨论】: