1. 在第三方系统中,打开线索详情页面

通过 数据同步对接 将数据转入到第三方系统后

如果需要在第三方系统中,点击该数据后,打开线索详情页面,可以按以下方式对接:

  1. 数据同步给第三方后,第三方需记录 skb线索数据唯一id
  2. 在第三方系统中,点击该数据后,新开tab打开第三方系统的线索详情页面,如:https://your.domain.cn/skb/clue/detail/{{id}}
  3. 第三方系统的线索详情页面加载时,调用自己的后端接口,获取到当前用户 工商企业线索详情 的免登地址,然后通过 iframe加载该免登地址的页面即可

2. 线索详情页中,支持相关企业的详情打开

默认情况下,线索详情页面中,是不支持打开相关的企业详情页的,如下:

如需要支持相关企业的详情打开,需按以下方式对接:

  1. 已知: skb的详情页面中,再相关企业被点击后,会发送事件给父页面:
    window.parent.postMessage({ type: 'NAVIGATE_SKB_PATH', path:"/soukebox/soukebox/010beefffb3eb0565c613fd89ff717d7"}, "*")
  2. 第三方的父页面,可通过监听该事件,然后新开tab打开第三方系统的线索详情页面(即 1. 在第三方系统中,打开线索详情页面 中对接的页面)
    使用vue对接的第三方部分示例代码:
<!-- src/views/SkbClueDetail.vue -->
<script setup>
import { ref, onMounted, onUnmounted } from 'vue'
let messageHandler = null;

const handleMessage = (event) => {
  const data = event.data;
  if (data && data.type === 'NAVIGATE_SKB_PATH' && data.path) {
    // 构造你自己的详情页 URL,携带 path 参数
    const detailUrl = `/skb/detail?path=${encodeURIComponent(data.path)}`;
    // 新开tab打开详情页
    window.open(detailUrl, '_blank')
  } else {
    // ... 其他逻辑
  }
}
onMounted(() => {
  // ... 其他逻辑
  messageHandler = handleMessage;
  window.addEventListener('message', messageHandler);
})

onUnmounted(() => {
  if (messageHandler) {
    window.removeEventListener('message', messageHandler);
  }
})
</script>
文档更新时间: 2026-01-08 18:19   作者:李星亮