applicazione

Utilizzo

Gerarchia
application
Valore predefinito
Nessuna

Accetta
Un nome per l'applicazione e i sottoparametri per definirla

Regole speciali
application deve avere un parametro url o file, ma non entrambi

Definizione

Il parametro application definisce un'applicazione per il framework delle estensioni di Looker. Dopo aver aggiunto un'estensione a un progetto, gli utenti di Looker con autorizzazioni appropriate possono vedere l'estensione elencata nel menu Navigazione di Looker. Quando un utente seleziona l'estensione dal menu Sfoglia, l'applicazione si apre all'interno di Looker.

Se l'amministratore ha attivato la funzionalità Funzionalità di navigazione avanzata Labs, le estensioni saranno elencate nella sezione Applicazioni del nuovo pannello di navigazione avanzata sulla sinistra.

Il parametro application ha i seguenti sottoparametri:

L'applicazione deve avere un parametro url o un parametro file, ma non entrambi.

label

Specifica il nome dell'applicazione che viene mostrato all'utente nel menu Sfoglia. Il label può essere localizzato, se stai localizzando il tuo modello LookML.

url

Il parametro url viene utilizzato solo a scopo di sviluppo e deve indirizzare a un server di sviluppo in esecuzione sulla macchina dello sviluppatore. Ad esempio:

url: "http://localhost:8080/bundle.js"

Dopo lo sviluppo, puoi trascinare il file nell'IDE di Looker e utilizzare il parametro file per indirizzare al file.

file

Specifica il percorso di un file JavaScript (con estensione .js) che definisce l'applicazione. Il percorso è relativo alla radice del progetto. Ad esempio, questo parametro file rimanda al file bundle.js nella directory apps del progetto LookML:

file: "apps/bundle.js"

sri_hash

Specifica un hash Integrity risorsa secondaria (SRI) per la verifica di JavaScript. Può essere utilizzato con il parametro file o url. Il valore sri_hash non deve includere il prefisso sha384-.

sri_hash viene ignorato se url specifica un server di sviluppo.

entitlements

Il parametro entitlements specifica le risorse a cui può accedere l'estensione. L'estensione non sarà in grado di accedere alle risorse a meno che non siano elencate in entitlements.

Un'applicazione estensione deve specificare i diritti; l'applicazione non verrà eseguita senza di essi.

Il parametro entitlements include i seguenti sottoparametri. Se un sottoparametro non è incluso, per impostazione predefinita l'estensione non è autorizzata ad accedere a tale diritto.

Parametro Descrizione Esempio
local_storage Specifica se l'estensione è autorizzata ad accedere allo spazio di archiviazione locale. local_storage: yes
navigation Specifica se l'estensione può accedere a una pagina diversa in Looker. navigation: yes
new_window Specifica se l'estensione è autorizzata ad aprire una nuova finestra o scheda del browser. new_window: yes
new_window_external_urls Un elenco di URL separato da virgole per cui un'estensione può aprire una nuova finestra. Questo diritto richiede il diritto new_window. Puoi includere caratteri jolly come * per i sottodomini e i percorsi. new_window_external_urls: ["https://www.gmail.com"]
use_form_submit Specifica se l'estensione è autorizzata a inviare moduli. I componenti di Looker che utilizzano moduli HTML richiedono che use_form_submit: yes funzioni correttamente. use_form_submit: yes
use_embeds Specifica se l'estensione è autorizzata a utilizzare l'SDK Looker Embed. use_embeds: yes
use_downloads AGGIUNTO 21,6 Specifica se l'estensione è autorizzata a scaricare file. use_downloads: yes
use_iframes AGGIUNTO 21,6 Specifica se l'estensione è autorizzata a creare un iframe. use_iframes: yes
use_clipboard AGGIUNTO 21,8 Specifica se l'estensione è autorizzata a scrivere negli appunti di sistema. Per motivi di sicurezza, le estensioni non possono leggere dagli appunti di sistema. use_clipboard: yes
core_api_methods Un elenco di metodi dell'API Looker separati da virgole utilizzati dall'estensione. core_api_methods: ["run_inline_query", "lookml_model_explore", "all_lookml_models"]
external_api_urls Un elenco di URL separati da virgole per le API esterne utilizzate dall'estensione. Come nell'esempio, puoi includere caratteri jolly come *.

A partire da Looker 21.6, le estensioni che utilizzano direttamente chiamate JavaScript fetch o XHR.open (anziché utilizzare le chiamate API extensionSDK.fetchProxy o extensionSDK.serverProxy) devono includere gli URL nell'elenco.
external_api_urls: ["http://example.com:3000", "https://*.googleapis.com"]
oauth2_urls Un elenco di URL separati da virgole per l'autenticazione OAuth 2.0 e lo scambio di codice utilizzati dall'estensione. oauth2_urls: ["https://accounts.google.com/o/oauth2/v2/auth"]
global_user_attributes Un elenco separato da virgole di attributi utente a livello di sistema utilizzati dall'estensione. global_user_attributes: ["company", "department"]
scoped_user_attributes Un elenco di attributi utente specifici delle estensioni separati da virgole. scoped_user_attributes: ["first_name", "last_name"]

Esempio

Di seguito è riportato il parametro application nel file manifest del progetto per l'esempio di estensione del sink della cucina di Looker:

application: kitchensink {
  label: "Kitchen sink"
  url: "http://localhost:8080/bundle.js"
  entitlements: {
    local_storage: yes
    navigation: yes
    new_window: yes
    use_form_submit: yes
    use_embeds: yes
    core_api_methods: ["all_connections","search_folders", "run_inline_query", "me", "all_looks", "run_look"]
    external_api_urls: ["http://127.0.0.1:3000", "http://localhost:3000", "https://∗.googleapis.com", "https://∗.github.com", "https://REPLACE_ME.auth0.com"]
    oauth2_urls: ["https://accounts.google.com/o/oauth2/v2/auth", "https://github.com/login/oauth/authorize", "https://dev-5eqts7im.auth0.com/authorize", "https://dev-5eqts7im.auth0.com/login/oauth/token", "https://github.com/login/oauth/access_token"]
    scoped_user_attributes: ["user_value"]
    global_user_attributes: ["locale"]
  }
}

Per altri esempi, vedi il repository extension-examples di Looker.