网页版 Topics API 的支持资源

查找有关调试、问题排查和“知识问答”网站主题支持资源的建议。

问题排查

如果您发出设置了标头 Sec-Browsing-Topicsdocument.browsingTopics() 调用或 fetch() 请求,但收到的响应为空数组,则可以在本地开发环境和实际系统中执行多种调试步骤来找出问题的根本原因。

在本地调试

如果您在本地进行测试,请确保您使用的是包含所需参数的 Chrome。

  • 如需绕过注册,请启用标志 chrome://flags/#privacy-sandbox-enrollment-overrides,然后添加调用“主题”的网站的网址。
  • 使用功能标志配置 Topics API 以进行测试。通过这些标志,您可以修改“时代”时长、热门主题数量等参数,以便轻松测试主题。您可以使用以下建议的功能标志:

    --enable-features=BrowsingTopics,BrowsingTopicsParameters:time_period_per_epoch/15s/max_epoch_introduction_delay/3s,PrivacySandboxAdsAPIsOverride,PrivacySandboxSettings3,OverridePrivacySandboxSettingsLocalTesting
    
  • 在使用标志运行 Chrome 之前,请确保您已关闭所有其他 Chrome 实例和进程。

  • 请确保:

    • 您使用的是 Chrome 101 或更高版本。
    • 您的脚本已调用 Topics API 来观察主题。在测试时,您可以访问嵌入脚本的网站,以模拟用户行为。如需查看实际示例,请参阅演示
    • 您没有运行广告拦截器或类似的应用或扩展程序。
    • 您未处于无痕模式。
    • chrome://settings/trackingProtection 中,Block all third-party cookies 选项处于停用状态。

调试实时实现

如果您在观察用户的第一周内从正式版应用调用 Topics API,则预计会收到空结果,因为您的应用可能尚未观察到用户感兴趣的主题。您可以按照我们的建议调试解决方案。

  • 确保您的网站已在 Privacy Sandbox 中注册
  • 测试您的前端代码,确保 JavaScript 按预期运行。
  • 测试您的后端以接收主题结果。
    • 请务必确保数据类型和后端 API 参数配置正确无误。
    • 确保您的后端已配置为适当扩缩
  • 根据我们的经验,您至少需要等待三周,才能开始获得更相关的主题结果。
  • 并非所有用户都能启用“主题”功能:
    • 用户可以明确停用 Topics API。
    • 发布商的网页可以控制权限政策,并为其网站选择停用
  • 向此环境添加指标和可观测性:您需要这些指标来分析初始结果。示例指标包括:
    • 通话延迟时间。
    • 主题调用出现 HTTP 错误。
  • 在前三周内,请尽量减少对实现方式的更改。

资源