What is the best way to store private data in react-native?

前端 未结 3 1658
别那么骄傲
别那么骄傲 2020-11-30 13:25

How can i implement feature like remember me when authenticating via react application? I think unencrypted AsyncStorage isn\'t the best way to do

相关标签:
3条回答
  • 2020-11-30 13:41

    Expo.SecureStore provides a way to encrypt and securely store key–value pairs locally on the device.

    Use SecureStore.setItemAsync(key, value, options) to store and SecureStore.getItemAsync(key, options) to retrieve data.

    Documentation: https://docs.expo.io/versions/latest/sdk/securestore

    0 讨论(0)
  • 2020-11-30 13:53

    What is the best way to store private data in react-native?

    I would recommend using a library like react-native-keychain to store private data in react-native

    You can use it like that:

    // Generic Password, service argument optional
    Keychain
      .setGenericPassword(username, password)
      .then(function() {
        console.log('Credentials saved successfully!');
      });
    
    // service argument optional
    Keychain
      .getGenericPassword()
      .then(function(credentials) {
        console.log('Credentials successfully loaded for user ' + credentials.username);
      }).catch(function(error) {
        console.log('Keychain couldn\'t be accessed! Maybe no value set?', error);
      });
    

    I hope my answer was helpful

    0 讨论(0)
  • 2020-11-30 13:55

    You can use the simply storage of react-native to save the pair key=>value, the next class in TypeScript can help you:

    export class MyStorage {
    
         handler: Storage;
    
        constructor(){
            this.handler = require('react-native-local-storage');
        }
    
        public saveData(key: string, value: string){
            this.handler.save(key,value).then(() => {
                this.handler.get(key).then((data) => {console.log("get: ", data)});
    
              })
        }
    
        public getData(key: string) : Promise<any> {        
          return this.handler.get(key);
        }
    
    }
    
    • saveData method storage a "value" that can be accessed by a "key".
    • getData return the Promise that wrap the value saved with "key".
    0 讨论(0)
提交回复
热议问题