开始使用不公开嵌入

本页将引导您完成私密嵌入的设置。私密嵌入选项要求您直接管理 <iframe> HTML 元素以嵌入 Looker 内容,并要求用户在主机应用之外单独登录 Looker。

我们将介绍以下私密嵌入代码示例:

<iframe
    src="https://instance.looker.com/embed/dashboards/4?Timeframe=14+day"
    width="600"
    height="300"
    frameborder="0">
</iframe>

1. 构建嵌入内容网址

以网址 https://instance.looker.com/dashboards/4?theme=red&Timeframe=14+day 中的 Looker 内容为例。我们将从这个 Looker 内容网址构建嵌入内容网址 ,并将 iframe 的 src 属性设置为该网址。在完成这些步骤时,您可以随意使用自己的 Looker 内容网址。

前面代码示例中的嵌入内容网址如下所示:

https://instance.looker.com/embed/dashboards/4?theme=red&Timeframe=14+day

嵌入内容网址由三部分组成:

  • 主机名:Looker 实例的主机名
  • 路径:以 /embed 为前缀的 Looker 内容网址路径(查询可视化图表需要执行额外的步骤)
  • 参数:用于指定过滤条件和主题的网址参数

协议必须始终为 https://。接下来,我们来详细构建每个部分。

第 1 部分:主机名

  1. 前往 Looker 内容。以示例 Looker 内容网址为例:https://instance.looker.com/dashboards/4?theme=red&Timeframe=14+day
  2. 嵌入内容网址的主机名为 instance.looker.com

第 2 部分:路径

嵌入内容网址的路径取决于您嵌入的 Looker 内容。

嵌入除查询可视化图表之外的所有 Looker 内容

  1. 前往 Looker 内容。以示例 Looker 内容网址为例:https://instance.looker.com/dashboards/4?theme=red&Timeframe=14+day
  2. 确定 Looker 内容网址的路径:/dashboards/4
  3. 在 Looker 内容网址的路径前添加 /embed 前缀。嵌入内容网址的路径为 /embed/dashboards/4

嵌入查询可视化图表

  1. 前往查询可视化图表。示例网址:instance.looker.com/explore/my_model/my_explore?qid=1234567890abcdefghij12
  2. 确定查询客户端 ID。qid 参数:1234567890abcdefghij12 是查询的客户端 ID,用于表示查询和可视化图表设置。
  3. 嵌入内容网址的路径为 /embed/query-visualization/,后接查询客户端 ID。示例嵌入内容网址的路径为 /embed/query-visualization/1234567890abcdefghij12

第 3 部分:参数

嵌入内容网址的参数用于控制嵌入内容的过滤条件和主题。

过滤条件

  1. 前往 Looker 内容网址。
  2. 手动将内容的过滤条件调整为您想要的过滤条件。在本示例中,生成的 Looker 内容网址为:https://instance.looker.com/dashboards/4?Timeframe=14+day
  3. 嵌入内容网址的参数是 Looker 内容网址的参数,例如 Timeframe=14+day

在本示例中,参数 Timeframe=14+day 设置了信息中心的 Timeframe 过滤条件的值。

主题

如需了解如何控制嵌入内容的外观,请查看主题指南

2. 测试嵌入内容网址

在浏览器中打开嵌入内容网址,预览嵌入内容的行为和外观。

3. 创建 iframe

  1. 在主机应用中创建 iframe 元素。
  2. src 属性设置为嵌入内容网址。
  3. 根据需要定义 widthheight 和其他属性,以便以最佳方式显示嵌入的 Looker 内容。

4. 考虑用户访问权限问题

用户必须登录 Looker 才能查看嵌入内容。如果用户未登录,iframe 将显示 401 错误页面。

用户登录选项

用户可以通过以下两种方式之一登录 Looker:

1. 事先登录 Looker

用户必须先在同一浏览器中登录 Looker,然后才能查看嵌入内容。

2. 启用可选的嵌入 Looker 登录屏幕

如果用户未登录,请将 allow_login_screen=true 添加到嵌入内容网址的参数中,以便在 iframe 中显示 Looker 登录屏幕。我们的示例嵌入内容网址变为:https://instance_name.looker.com/embed/dashboards/4?Timeframe=14+day&allow_login_screen=true

请注意以下两点:

  • 您必须停用 Looker 登录页面的同源保护设置,才能在 iframe 嵌入中启用 Looker 登录屏幕。
  • 如果您的 Looker 实例使用单点登录 (SSO) 通过身份提供方对用户进行身份验证,则您的身份提供方可能会阻止 iframe 中的登录屏幕。如果发生这种情况,您需要使用选项 1。

Looker 使用 Cookie 进行用户身份验证和会话存储。如果用户的浏览器访问的 Looker 实例嵌入内容网址的主机名与主机应用位于不同的网域下,则用户的浏览器必须启用第三方 Cookie。

某些浏览器(例如 Firefox 和 Safari)默认采用会阻止第三方 Cookie 的 Cookie 政策。如果用户的浏览器无法允许第三方 Cookie,您可以向 Looker 实例添加自定义网域,以便主机应用和嵌入内容网址的主机名 Looker 实例位于同一网域下。

5. 与 iframe 互动

开始使用 Looker 嵌入 iframe 发布消息

后续步骤

使用我们的 Embed SDK 开始使用签名嵌入,并查看您可以使用 Looker 嵌入执行的操作示例。