Usage
application: application_name { label: "Application Label" url: "application_url" file: "application_file_path" sri_hash: "SRI_hash_value" mount_points: { dashboard_vis: yes | no dashboard_tile: yes | no standalone: yes | no } entitlements: { local_storage: yes | no navigation: yes | no new_window: yes | no new_window_external_urls: ["url1", "url2", ...] use_form_submit: yes | no use_embeds: yes | no use_downloads: yes | no use_iframes: yes | no use_clipboard: yes | no core_api_methods: ["api_method1", "api_method2", ...] external_api_urls: ["api_url1", "api_url2", ...] oauth2_urls: ["oauth2_url1", "oauth2_url2", ...] global_user_attributes: ["user_attribute1", "user_attribute2", ...] scoped_user_attributes: ["user_attribute1", "user_attribute2", ...] } }
|
היררכיה
application |
ערך ברירת המחדל
ללא
מקבל
שם לאפליקציה ולפרמטרים המשניים כדי להגדיר אותה
כללים מיוחדים
התג application חייב לכלול את הפרמטר url או את הפרמטר file, אבל לא את שניהם
|
הגדרה
הפרמטר application מגדיר אפליקציה עבור סביבת התוספים של Looker. אחרי שמוסיפים תוסף לפרויקט, משתמשי Looker עם הרשאות מתאימות יכולים לראות את התוסף במיקום שמוגדר על ידי הפרמטר mount_points. אם לא מציינים את הפרמטר mount_points, התוסף מופיע בקטע Applications בתפריט Looker.
הפרמטר application כולל את הפרמטרים המשניים הבאים:
האפליקציה צריכה לכלול פרמטר
urlאו פרמטרfile, אבל לא את שניהם.
label
מציינת את שם האפליקציה שמוצג למשתמש בקטע אפליקציות בתפריט הראשי. אפשר לבצע לוקליזציה של label אם מבצעים לוקליזציה של מודל LookML.
url
הפרמטר url מיועד לשימוש למטרות פיתוח בלבד, והוא צריך להפנות לשרת פיתוח שפועל במחשב של המפתח. לדוגמה:
url: "http://localhost:8080/bundle.js"
אחרי הפיתוח, אפשר לגרור את הקובץ אל Looker IDE ואז להשתמש בפרמטר file כדי להפנות אל הקובץ.
file
מציינים את הנתיב לקובץ JavaScript (עם הסיומת .js) שמגדיר את האפליקציה. הנתיב הוא יחסי לשורש הפרויקט. לדוגמה, הפרמטר file הזה מצביע על הקובץ bundle.js בספרייה apps של פרויקט LookML:
file: "apps/bundle.js"
sri_hash
מציינת גיבוב של Subresource Integrity (SRI) למטרות אימות של JavaScript. אפשר להשתמש בו עם הפרמטר file או עם הפרמטר url. הערך של sri_hash לא יכול לכלול את הקידומת sha384-.
המערכת מתעלמת מהדגל sri_hash אם הדגל url מציין שרת פיתוח.
mount_points
הפרמטר mount_points קובע איפה בממשק המשתמש של Looker התוסף יופיע ויהיה זמין למשתמש, וגם אם התוסף יספק נתונים משלו. תוספים שמיועדים להרצה במשבצת בלוח בקרה מחייבים ציון של mount_points. אם לא מציינים את mount_points, התוסף יופיע בקטע Applications בתפריט Looker. אפשר להשתמש בכמה תגי mount_points.
| פרמטר | תיאור | דוגמה |
|---|---|---|
dashboard_vis |
כשהתוסף מופעל, הוא מופיע ברשימת התצוגות החזותיות של כלי הניתוח, ואפשר לבחור אותו ולשמור אותו כמשבצת בלוח הבקרה. כשמריצים את לוח הבקרה, הוא מריץ את השאילתה שמשויכת למשבצת ומעביר את הנתונים לתוסף. זה דומה לאופן שבו תצוגות חזותיות בהתאמה אישית פועלות. ההבדל העיקרי בין תרשים מותאם אישית לבין תוסף שפועל במשבצת בלוח בקרה שמופעל בה dashboard_vis הוא שהתוסף עשוי לבצע קריאות ל-Looker API.
|
dashboard_vis: yes |
dashboard_tile |
אם התוסף מופעל, הוא יופיע בחלונית תוספים שמוצגת כשמשתמש עורך לוח בקרה ובוחר באפשרות תוספים אחרי שהוא לוחץ על הלחצן הוספה. סוג התוסף הזה אחראי לאחזור הנתונים שלו. | dashboard_tile: yes |
standalone |
ההגדרה הזו קובעת אם התוסף יופיע בקטע Applications בתפריט Looker. אם לא מציינים את הפרמטר mount_points, ברירת המחדל של התוסף היא standalone: yes.
|
standalone: yes |
entitlements
הפרמטר entitlements מציין את המשאבים שלתוסף יש גישה אליהם. התוסף לא יוכל לגשת למשאבים אלא אם הוא מופיע בentitlements.
אפליקציית תוסף חייבת לציין הרשאות; האפליקציה לא תפעל בלעדיהן.
הפרמטר entitlements כולל את הפרמטרים המשניים הבאים. אם לא כוללים תת-פרמטר, כברירת מחדל התוסף לא מקבל גישה להרשאה הזו.
| פרמטר | תיאור | דוגמה |
|---|---|---|
local_storage |
המדיניות הזו קובעת אם התוסף יכול לגשת לאחסון המקומי. | local_storage: yes |
navigation |
המדיניות קובעת אם התוסף יכול לעבור לדף אחר ב-Looker. | navigation: yes |
new_window |
ההגדרה קובעת אם התוסף יכול לפתוח חלון או כרטיסייה חדשים בדפדפן. | new_window: yes |
new_window_external_urls |
רשימה מופרדת בפסיקים של כתובות URL או כתובות URL חלקיות, שתוסף יכול לפתוח בהן חלון חדש. כדי להשתמש בהרשאה הזו, צריך את ההרשאה new_window. אפשר לכלול תווים כלליים לחיפוש כמו * לתת-דומיינים ולנתיבים.
|
new_window_external_urls: ["https://www.gmail.com"] |
use_form_submit |
המדיניות הזו קובעת אם התוסף יכול לשלוח טפסים. רכיבי Looker שמשתמשים בטופסי HTML ידרשו את use_form_submit: yes כדי לפעול בצורה תקינה.
|
use_form_submit: yes |
use_embeds |
המדיניות הזו קובעת אם התוסף יכול להשתמש ב-Looker Embed SDK. | use_embeds: yes |
use_downloads |
נוספה 21.6 המדיניות הזו קובעת אם התוסף יכול להוריד קבצים. | use_downloads: yes |
use_iframes |
נוספה גרסה 21.6 המדיניות הזו קובעת אם התוסף מורשה ליצור iframe. | use_iframes: yes |
use_clipboard |
נוספה בגרסה 21.8 המדיניות הזו קובעת אם התוסף יכול לכתוב בלוח של המערכת. מטעמי אבטחה, לתוספים אין הרשאה לקרוא מה-Clipboard של המערכת. | use_clipboard: yes |
core_api_methods |
רשימה מופרדת בפסיקים של שיטות Looker API שבהן התוסף משתמש. | core_api_methods: ["run_inline_query", "lookml_model_explore", "all_lookml_models"] |
external_api_urls |
רשימה מופרדת בפסיקים של כתובות URL של ממשקי API חיצוניים שבהם התוסף משתמש. כמו שרואים בדוגמה, אפשר לכלול תווים כלליים לחיפוש כמו *. החל מ-Looker 21.6, תוספים שמשתמשים ישירות בקריאות JavaScript fetch או XHR.open (בניגוד לשימוש בקריאות API extensionSDK.fetchProxy או extensionSDK.serverProxy) חייבים לכלול את כתובות ה-URL ברשימה.
|
external_api_urls: ["http://example.com:3000", "https://*.googleapis.com"] |
oauth2_urls |
רשימה מופרדת בפסיקים של כתובות URL לאימות OAuth 2.0 ולהחלפת קוד שהתוסף משתמש בהן. | oauth2_urls: ["https://accounts.google.com/o/oauth2/v2/auth"] |
global_user_attributes |
רשימה מופרדת בפסיקים של מאפייני משתמשים ברמת המערכת שבהם התוסף משתמש. | global_user_attributes: ["company", "department"] |
scoped_user_attributes |
רשימה מופרדת בפסיקים של מאפייני משתמש ספציפיים לתוסף שבהם התוסף משתמש. | scoped_user_attributes: ["first_name", "last_name"] |
דוגמה
הפרמטר application הבא מופיע בקובץ המניפסט של הפרויקט בדוגמה של תוסף kitchen sink של 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"]
}
}
דוגמאות נוספות זמינות במאגר extension-examples של Looker.