跳转到主要内容

Web App 集成

Markdown

本页介绍 Unico 旅程的工作方式以及将其嵌入应用程序的可用集成模型。

旅程是用户完成身份验证所经历的一系列步骤。例如:拍摄证件照片并进行面部捕获(活体检测)。

Unico 管理整个体验。集成工作量极小:通过 CreateProcess 创建旅程,将用户引导至该旅程, 并在结束时接收结果。期间的一切——页面、指示、验证——均已由 Unico 构建和维护。

两种集成模型​

每个客户有不同的需求。Unico 提供两种模型将用户引导至旅程。

模型最适合
直接访问已使用 WebView 的移动应用程序,或旅程可以在主页面之外进行的 Web 流程
Journeys SDK需要集成且无缝体验的 Web 应用程序,保持用户在同一环境中

用户被重定向到 Unico 托管的链接,在那里进行旅程。完成后,用户被返回到在流程创建期间 定义的 URL(callbackUri 参数)。

这是最简单的采用方式:不需要安装任何库,在旅程不需要在应用程序自身页面内进行时效果很好。 另一方面,将用户带离客户环境往往会引入更多摩擦,从而导致更高的流失率。

创建流程后,API 响应包含 Unico 托管旅程的 URL。有两种常见方式将用户引导至该 URL:

  • 标准重定向。 用户直接重定向到旅程 URL。完成后,Unico 将用户重定向回流程创建期间 定义的 callbackUri。
  • 使用 window.open() 打开新标签页。 旅程在新的浏览器标签页中打开,使用户保持在单独的 上下文中。在这种情况下,建议监控 URL 变更至 callbackUri 并在流程完成后关闭标签页。 有关 API 的详细信息,请参阅 MDN 文档。

在移动应用程序中,通常使用 WebView 直接打开旅程,无需额外的重定向。在这种情况下, callbackUri 也接受 deeplink,允许旅程完成时触发打开原生应用程序中的特定页面。 只需将 deeplink 配置为返回目的地,操作系统会负责将用户路由到正确的位置。

在捕获测试期间不要保持 DevTools 打开​

Unico 应用程序使用 Capture SDK(unico-webframe)进行面部捕获,该 SDK 会将打开的 DevTools 检测为潜在欺诈信号并阻止提交。在运行端到端捕获测试之前,请关闭 DevTools。

不支持的集成

本文档中描述的模型——直接访问和 Journeys SDK——是 Unico 官方支持的唯一集成方式。偏离这些 标准的集成可能导致意外行为、安全流程失败和旅程中断,且不会得到 Unico 支持团队的覆盖。

不支持方式的示例:

  • 在移动应用程序中将 SDK 嵌入 WebView 内。在这些情况下,正确的方式是使用直接访问 模型,在 WebView 中直接打开旅程链接,而不涉及 Journeys SDK。
  • 通过 <iframe> HTML 标签直接加载 iFrame,不通过 Journeys SDK。iFrame 是 SDK 的 内部实现细节,不得手动实例化。正确的方式是使用 Journeys SDK,它以安全的方式在 预期标准内管理 iFrame 生命周期。

如果对某种方式是否符合支持标准有任何疑问,请在继续实施之前查阅文档或联系支持团队。