本页将引导您完成私密嵌入的设置。私密嵌入选项要求您直接管理 <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 内容网址。
前面代码示例中的嵌入内容网址如下所示:
嵌入内容网址由三部分组成:
- 主机名:Looker 实例的主机名
- 路径:以
/embed为前缀的 Looker 内容网址路径(查询可视化图表需要执行额外的步骤) - 参数:用于指定过滤条件和主题的网址参数
协议必须始终为 https://。接下来,我们来详细构建每个部分。
第 1 部分:主机名
- 前往 Looker 内容。以示例 Looker 内容网址为例:
https://instance.looker.com/dashboards/4?theme=red&Timeframe=14+day。 - 嵌入内容网址的主机名为
instance.looker.com。
第 2 部分:路径
嵌入内容网址的路径取决于您嵌入的 Looker 内容。
嵌入除查询可视化图表之外的所有 Looker 内容
- 前往 Looker 内容。以示例 Looker 内容网址为例:
https://instance.looker.com/dashboards/4?theme=red&Timeframe=14+day - 确定 Looker 内容网址的路径:
/dashboards/4。 - 在 Looker 内容网址的路径前添加
/embed前缀。嵌入内容网址的路径为/embed/dashboards/4。
嵌入查询可视化图表
- 前往查询可视化图表。示例网址:
instance.looker.com/explore/my_model/my_explore?qid=1234567890abcdefghij12 - 确定查询客户端 ID。
qid参数:1234567890abcdefghij12是查询的客户端 ID,用于表示查询和可视化图表设置。 - 嵌入内容网址的路径为
/embed/query-visualization/,后接查询客户端 ID。示例嵌入内容网址的路径为/embed/query-visualization/1234567890abcdefghij12
第 3 部分:参数
嵌入内容网址的参数用于控制嵌入内容的过滤条件和主题。
过滤条件
- 前往 Looker 内容网址。
- 手动将内容的过滤条件调整为您想要的过滤条件。在本示例中,生成的 Looker 内容网址为:
https://instance.looker.com/dashboards/4?Timeframe=14+day - 嵌入内容网址的参数是 Looker 内容网址的参数,例如
Timeframe=14+day
在本示例中,参数 Timeframe=14+day 设置了信息中心的 Timeframe 过滤条件的值。
主题
如需了解如何控制嵌入内容的外观,请查看主题指南。
2. 测试嵌入内容网址
在浏览器中打开嵌入内容网址,预览嵌入内容的行为和外观。

3. 创建 iframe
- 在主机应用中创建 iframe 元素。
- 将
src属性设置为嵌入内容网址。 - 根据需要定义
width、height和其他属性,以便以最佳方式显示嵌入的 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。
用户浏览器 Cookie 政策
Looker 使用 Cookie 进行用户身份验证和会话存储。如果用户的浏览器访问的 Looker 实例嵌入内容网址的主机名与主机应用位于不同的网域下,则用户的浏览器必须启用第三方 Cookie。
某些浏览器(例如 Firefox 和 Safari)默认采用会阻止第三方 Cookie 的 Cookie 政策。如果用户的浏览器无法允许第三方 Cookie,您可以向 Looker 实例添加自定义网域,以便主机应用和嵌入内容网址的主机名 Looker 实例位于同一网域下。
5. 与 iframe 互动
开始使用 Looker 嵌入 iframe 发布消息。
后续步骤
使用我们的 Embed SDK 开始使用签名嵌入,并查看您可以使用 Looker 嵌入执行的操作示例。