Skip to main content
你可以在自己的网站中放置 World Monitor 地图、咽喉要道监测面板或恐惧与贪婪仪表。将嵌入代码复制到网页 HTML 中即可。访客无需 World Monitor 账户。 免费地图无需账户或密钥。付费套餐通过嵌入密钥提供更多地图图层,并开放其他受支持的面板。每个嵌入都带有可见的 World Monitor 归属链接。

允许嵌入的面板

下表列出了支持的嵌入内容。/embed 不提供完整仪表盘或其他仪表盘面板。

实时地图层级

付费地图显示你选择的图层。添加密钥不会自动打开所有可用图层。两个层级在省略图层设置时,都默认显示冲突、地震和天气。 页面隐藏时,地图暂停刷新;页面恢复可见时,刷新恢复。数据源各有更新周期。付费版本中的静态基础设施图层不会变成实时数据流。 咽喉要道监测和恐惧与贪婪面板在 iframe 打开时加载数据,不按地图的周期刷新。重新加载 iframe 才会再次获取数据。

无人值守屏幕与自助显示模式

你可以在管理层仪表盘或数字标牌页面中,将地图与其他信息流并排显示。在安装不带键盘或鼠标的屏幕前,先在嵌入代码中设置初始视图。

可以在其他域名上使用 iframe 吗?

可以。请使用专用的 /embed 路由,它允许其他网站通过 iframe 嵌入。完整的 /dashboard 限制嵌入,不适用于此场景。安全策略详情见嵌入响应头。

屏幕需要保持登录吗?

不需要。免费地图无需登录或密钥。付费地图需在加载器代码中配置 wme_… 嵌入密钥。屏幕不使用访客的登录会话或 Cookie。 付费地图会获取有效期为 30 分钟的授权令牌,并在密钥及所属账户的嵌入权限仍然有效时自动续期。操作人员无需在每次续期时登录。重新加载宿主页面会再次运行代码,并使用已配置的密钥请求新的授权令牌。 此场景不支持带令牌的 URL。将密钥保留在代码的 data-key 属性中,不要放入 URL。密钥吊销、账户权限变更或服务故障可能影响显示;请参阅故障行为。

如何隐藏菜单并充分利用显示区域?

/embed 地图已省略仪表盘导航、图层选择器和地图控件。无需添加 ?view=kiosk 或 ?menu=hidden;这些不是受支持的设置。World Monitor 归属链接仍然可见。 调整 iframe 或其容器的尺寸以适应分屏布局。使用显示浏览器或数字标牌播放器的自助显示(kiosk)或全屏设置来隐藏浏览器控件。嵌入内容不会将浏览器切换为自助显示模式。 配置播放器,使其在开机时打开宿主页面、防止休眠,并在重启或浏览器故障后重新打开或加载页面。在目标硬件上测试开机流程以及断网、断电后的恢复。嵌入内容不管理设备,服务故障期间可见的地图可能包含较旧的数据。

从仪表盘复制地图

  1. 打开 World Monitor 仪表盘。
  2. 设置地图位置、缩放、主题和图层。
  3. 点击地图上的 Embed。
  4. 在 Free — no key needed 或 With your embed key 下点击 Copy snippet。
  5. 将代码粘贴到网站的 HTML 中。
付费选项仅向具备嵌入权限的账户显示。发布前,将 YOUR_WME_EMBED_KEY 替换为从 Settings → Embeds 创建的密钥。
对话框预览始终使用免费地图,即使当前账户已付费。代码保留初始视图和支持的图层选择。嵌入列表之外的仪表盘图层会被省略,免费代码只显示免费图层。

创建和管理嵌入密钥

免费地图可以跳过本节。每个付费套餐都提供嵌入权限,包括不提供 REST API 访问的套餐。
  1. 登录用于提供嵌入内容的账户。
  2. 打开 Settings → Embeds。也可以点击地图嵌入对话框中的 Manage embed keys。
  3. 输入密钥名称,例如 marketing-site。
  4. 点击 Create Embed Key。
  5. 立即复制密钥。密钥只显示一次。
  6. 将密钥粘贴到代码的 data-key 属性中。
每个账户最多保留五个有效嵌入密钥。Embeds 标签页列出名称、前缀和使用信息。如果丢失密钥,请创建替代密钥。轮换密钥时,先在网站中使用新密钥并检查嵌入,再到同一标签页吊销旧密钥。
嵌入密钥在网页 HTML 中可见。请使用权限仅限嵌入的 wme_… 密钥。不要发布以 wm_ 开头的用户 API 密钥或企业密钥。这些凭据可以授权嵌入之外的请求。
吊销会在约一分钟内阻止新的密钥校验,但不会清除访客已经加载的内容。付费面板可以继续显示,直到重新加载。付费地图的授权令牌最多仍可有效 30 分钟;续期被拒绝后,地图返回免费层级。临时故障可能让最后一帧保留更久。请参阅故障行为。

可复制加载器

选择下方的一段代码,粘贴到自定义 HTML 块或页面模板中。每个脚本在所在位置创建一个 iframe,宽度占满容器。 对于付费嵌入,将 YOUR_WME_EMBED_KEY 替换为你的嵌入密钥。通过 data-layers、data-center 和 data-zoom 设置地图初始视图。
如果编辑器移除了 script 标签,请使用免费 iframe。付费嵌入需要宿主页面的 JavaScript 发送密钥。仅有 iframe URL 无法提供密钥。

排查嵌入问题

开发者参考

嵌入响应头

托管应用为嵌入内容和仪表盘设置不同的响应头: 嵌入内容的 CSP 还包含 frame-src 'none'。它阻止嵌入内容加载嵌套框架,不会阻止网站嵌入该内容。frame-ancestors 决定哪些父页面可以嵌入它。 如果宿主页面设置了 CSP,请在 frame-src 中允许 https://www.worldmonitor.app;使用加载器时,也需在 script-src 中允许该来源。自托管时,请检查经过反向代理后的最终响应头;额外的嵌入限制可能阻止显示。

查询参数

以下参数配置 /embed。加载器将对应的 data-* 属性转发到该 URL。 加载器接受 data-panel、data-layers、data-center、data-zoom、data-theme 和 data-variant,以及下列属性: 为兼容现有集成,面板别名仍然有效。新代码请使用规范 ID。

支持的地图图层

在 layers 或 data-layers 中使用这些 ID。waterways 图层在地图上标记咽喉要道;独立的 chokepoint-strip 面板显示状态和流量信息。 从 cables 到 gulfInvestments 的基础设施和市场图层使用静态地图数据。不支持飞机、实时船舶、卫星跟踪及列表之外的其他仪表盘图层。X 帖子正文不可嵌入。

Iframe(实时地图)

免费地图只需直接使用 iframe。省略 panel 时选择地图。
优先使用 embed.js,由它完成凭据交换。自定义集成必须先安装消息监听器,再设置 iframe URL。iframe 在最初的三秒等待期内接受来自父页面的凭据。iframe 发送 { source: "worldmonitor-embed", type: "ready" }。检查消息来源和发送窗口。向准确的 World Monitor 来源回复 { source: "worldmonitor-embed", type: "credential", key }。
将面板设为 map 并添加地图查询参数,即可通过同样的交换方式显示付费地图。不要将密钥放进 frame.src。在组件式应用中,组件卸载时要移除 iframe 和消息监听器。

授权

付费嵌入校验密钥所属账户。访客 Cookie 和匿名 wms_ 会话令牌不提供嵌入权限。嵌入请求不发送 Cookie。 地图授权令牌有效期为 30 分钟,权限限定到账户和面板。地图的 entitlement 端点为免费层级返回 public,该结果不代表付费访问有效。付费地图会话接受 wme_ 密钥,不接受用户 API 密钥或企业密钥。 嵌入密钥授权嵌入会话、权限检查和上表中的两个面板数据路由,不开放通用 REST API。免费地图使用聚合后的 map-frame 端点,不提供对底层冲突、地震、自然事件或社会动荡 REST 路由的匿名访问。直接获取数据请参阅 API 身份验证。 嵌入密钥不限制网站域名。密钥模型可以保存 allowedOrigins,但请求不会强制执行该字段,设置表单也不提供该选项。

故障行为

地图先以免费层级启动,密钥交换成功后升级。只有已选择、可用且获得授权的图层才会显示。 map-frame 响应包含 tier、refreshMs、generatedAt、layers 和 data。图层状态为 ok、partial、unavailable 或 not-entitled。免费请求可能在发出前省略付费图层,因此缺失图层不一定有显式的 not-entitled 结果。故障后仍可见的地图帧可能包含旧数据。 两个付费面板没有免费回退或自动刷新循环。初次密钥检查或数据加载失败时,它们显示错误。修正密钥、恢复权限或等待服务恢复后,请重新加载。

迁移旧嵌入

现有的无密钥地图 URL 仍默认选择 map。免费图层为冲突、地震和天气。抗议和静态基础设施图层需要付费嵌入权限。 为保持兼容,两个付费面板仍接受符合条件的 wm_ 用户密钥和已配置的企业密钥,并在浏览器控制台输出警告。这些凭据已不推荐用于嵌入,目前没有移除日期。请替换为 Settings → Embeds 中创建的 wme_ 密钥。wm_ 密钥不能升级地图。

其他集成

WebMCP 让浏览器智能体在 World Monitor 主站上使用工具,嵌入路由不暴露 WebMCP 工具。MCP Apps 在兼容的 AI 客户端中提供组件。要在网站上放置面板,请使用 /embed。