Storage

This class is responsible for storing internal data such as a user's access and refresh tokens, being the browser version based on cookies and the Node.js version based on plain memory caching.

Following the previous approach, the Storage behavior can be overridden as well.

If you're using the SDK in a mobile environment the default implementation wouldn't work since it expects cookies support.

Check the example for a React Native compatible implementation with AsyncStorage.

How to override Storage with AsyncStorage:

import { AsyncStorage } from 'react-native';
import SDK from '@uphold/uphold-sdk-javascript';

export default class extends SDK {
  constructor() {
    super(...arguments);

    this.storage = AsyncStorage;
  }
}

Properties

Property Type Description
cache Object Object to store cached data
storageName String Prefix used to store cookie values

Storage default properties:

{
  "cache": {},
  "storageName": "_token"
}

Constructor

Argument Type Required Default value Description
storageName String No _token Cookie prefix

Methods

.getItem()

Retrieves items from storage, resolving the stored value or rejecting otherwise.

Argument Type Required Description
key String Yes Item key

This method returns a Promise.

.setItem()

Sets an item in storage resolving the stored value.

Argument Type Required Description
key String Yes Item key
value String Yes Item value

This method returns a Promise.

.removeItem()

Removes an item from storage resolving the removed value.

Argument Type Required Description
key String Yes Item key

This method returns a Promise.

results matching ""

    No results matching ""