Demo Embed SDK

Repositori Looker Embed SDK menyertakan contoh kode dan demo Embed SDK. Karena persyaratan keamanan Looker, demo ini memerlukan sedikit penyiapan. Demo ini juga memerlukan secret sematan Looker Anda. Secret sematan memberikan akses ke semua data Anda, jadi perhatikan hal berikut:

  • Jangan bagikan rahasia Anda kepada siapa pun yang tidak Anda inginkan memiliki akses penuh ke instance Anda.
  • Jangan mereset rahasia Anda jika Anda sudah menggunakannya dalam konteks lain.
  • Jangan menyiapkan kode Anda untuk menyimpan secret di browser web.

Langkah 1: Aktifkan penyematan di instance Looker Anda

Hal ini didokumentasikan secara lebih mendetail di halaman dokumentasi Penyematan bertanda tangan.

  1. Buka Admin > Sematan Platform di instance Looker Anda. Tindakan ini memerlukan hak istimewa Admin.
  2. Server demo berjalan secara default di http://localhost:8080. Dengan menambahkan alamat tersebut ke Daftar yang Diizinkan untuk Domain Sematan, Anda dapat mengaktifkan demo untuk menerima pesan dari Looker.
  3. Aktifkan Autentikasi Sematan.
  4. Untuk melihat rahasia sematan, Anda harus meresetnya. Salin rahasia ke tempat yang aman.

Langkah 2: Sesuaikan setelan demo untuk instance Looker Anda

Berikan rahasia sematan Anda ke server. Untuk melakukannya, pilih salah satu opsi berikut:

  • Tetapkan sebagai LOOKER_EMBED_SECRET di lingkungan shell Anda.
  • Buat file bernama .env di root direktori SDK. Tambahkan baris ke file tersebut: LOOKER_EMBED_SECRET="YourLookerSecret"

Berikan alamat host instance Looker Anda ke server menggunakan salah satu metode berikut:

  • Tetapkan sebagai LOOKER_WEB_URL di lingkungan shell Anda.
  • Tambahkan LOOKER_WEB_URL="yourinstance.looker.com:yourport" ke file .env.

Edit file ENV untuk menentukan ID konten yang ingin Anda sematkan.

# Looker Embed Data Configuration
# Set to - if demo needs to ignore it

# Dashboard IDs
LOOKER_DASHBOARD_ID=1
LOOKER_DASHBOARD_ID_2=2
# Look ID
LOOKER_LOOK_ID=1
# Explore ID
LOOKER_EXPLORE_ID=model::explore
# Extension ID
LOOKER_EXTENSION_ID=extension::my-great-extension
# Report ID
LOOKER_REPORT_ID=aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
# Query Visualization ID
LOOKER_QUERY_VISUALIZATION_ID=1234567890ABCDEF123456

Edit file demo/demo_user.json agar sesuai dengan jenis pengguna yang ingin Anda sematkan.

{
  // External embed user ID. IDs are not shared with regular users. Required
  "external_user_id": "user1",
  // First and last name. Optional
  "first_name": "Pat",
  "last_name": "Embed",
  // Duration before session expires, in seconds. Required.
  "session_length": 3600,
  // Enforce logging in with these permissions. Recommended.
  "force_logout_login": true,
  // External embed group ID. Optional.
  "external_group_id": "group1",
  // Looker Group IDs. Optional
  "group_ids": [],
  // Permissions. See documentation for details. Required.
  // Can any combination of:
  //   access_data
  //   see_looks
  //   see_user_dashboards
  //   see_lookml_dashboards
  //   explore
  //   create_table_calculations
  //   download_with_limit
  //   download_without_limit
  //   see_drill_overlay
  //   see_sql
  //   save_content
  //   embed_browse_spaces
  //   schedule_look_emails
  //   send_to_sftp
  //   send_to_s3
  //   send_outgoing_webhook
  //   schedule_external_look_emails
  "permissions": [
    "access_data",
    "see_looks",
    "see_user_dashboards",
    "explore",
    "save_content",
    "embed_browse_spaces"
  ],
  // Model access permissions. Required.
  "models": ["powered_by", "thelook"],
  // User attributes. Optional.
  "user_attributes": { "locale": "en_US" },
}

Langkah 3: Buat dan jalankan demo

Untuk membuat dan menjalankan demo, ikuti langkah-langkah untuk server yang sesuai.

Server node

  1. Jalankan npm install
  2. Jalankan npm start

Server akan mencetak host dan port tempat server berjalan. Jika berbeda dengan http://localhost:8080, Anda harus menambahkannya ke Daftar Domain yang Disematkan.

Server Python

  1. Jalankan npm install
  2. Jalankan npm run python

Server akan mencetak host dan port tempat server berjalan.

Anda mungkin perlu pip install six untuk menginstal lapisan kompatibilitas Python 2/3.