API Archiviazione locale

Con l'API di archiviazione locale è possibile archiviare i dati nella risorsa di archiviazione locale del browser. Per usare l'API di archiviazione locale, è necessario abilitare l'opzione di amministratore dell'archiviazione locale del cliente.

L'archiviazione locale è isolata in modo che ogni tipo di oggetto visivo abbia un accesso di archiviazione separato.

Nota

È responsabilità dello sviluppatore assicurarsi che i dati archiviati siano conformi ai criteri dell'organizzazione dell'utente e per informare gli utenti sulle informazioni archiviate, se la riservatezza dei dati lo richiede. In particolare, gli sviluppatori di oggetti visivi personalizzati devono crittografare i dati se gli obiettivi o gli scenari aziendali lo prevedono.

Come usare l'archiviazione locale

Questa versione dell'API di archiviazione locale è pianificata per la deprecazione. Non stiamo accettando altre richieste. Quando possibile, usare la versione 2.

Nell'esempio seguente un contatore viene aumentato ogni volta che viene chiamato il metodo update . Il valore del contatore viene salvato localmente e chiamato ogni volta che viene avviato l'oggetto visivo. In questo modo, il contatore continua a contare da dove è stato interrotto anziché ricominciare ogni volta che viene avviato l'oggetto visivo:

export class Visual implements IVisual {
        // ...
        private updateCountName: string = 'updateCount';
        private updateCount: number;
        private storage: ILocalVisualStorageService;
        // ...

        constructor(options: VisualConstructorOptions) {
            // ...
            this.storage = options.host.storageService;
            // ...

            this.storage.get(this.updateCountName).then(count =>
            {
                this.updateCount = +count;
            })
            .catch(() =>
            {
                this.updateCount = 0;
                this.storage.set(this.updateCountName, this.updateCount.toString());
            });
            // ...
        }

        public update(options: VisualUpdateOptions) {
            // ...
            this.updateCount++;
            this.storage.set(this.updateCountName, this.updateCount.toString());
            // ...
        }
}

Considerazioni e limitazioni

  • Il limite di archiviazione locale è 1 mb per GUID.
  • I dati possono essere condivisi solo tra oggetti visivi con lo stesso GUID.
  • I dati non possono essere condivisi con un'altra istanza di Power BI Desktop.
  • L'API di archiviazione locale non è attivata per impostazione predefinita. Per attivarlo per l'oggetto visivo di Power BI, inviare una richiesta al supporto degli oggetti visivi di Power BI, pbicvsupport@microsoft.com.
  • L'API di archiviazione locale non supporta await le costruzioni. Sono consentiti solo then i metodi e catch .

L'oggetto visivo deve essere disponibile in AppSource e deve essere certificato.