【问题标题】:Getting deprecation reports from Report-To header; Reports are being generated but not being sent从 Report-To 标头获取弃用报告;正在生成报告但未发送
【发布时间】:2020-09-29 18:51:45
【问题描述】:

无法让 chrome/任何浏览器发送使用 Report-To 标头生成的报告

您好,我正在尝试收集由浏览器访问触发事件的网页生成的Deprecation/Crash/Intervention 报告。我有一个端点设置,当前在浏览器访问页面时接收 CSP 报告,但即使控制台中存在弃用错误,并且在日志查看器中生成了弃用报告,它也不是由 chrome 发送的(或野生动物园或火狐)。

Report-To 标头与 NEL 标头(也无法发送报告,但不是我关注的重点)一起发送,通过 securityheaders.com 扫描我的页面可以看出:

(这里测试的最大年龄很短,但我已经尝试了一整年)

日志

使用 chrome://net-export/ 并访问带有已弃用 JS 的页面,我可以看到在“Per origin config”部分中设置了正确的信息:

并且已弃用的 JS 正在生成弃用报告:

但由于某种原因,报告从未发送。有时在日志转储中会显示已多次尝试发送报告。

测试

我尝试使用带有命令行标志--enable-features=Reporting--enable-blink-features=Reporting 的chrome(尽管我认为这三种报告类型无论如何都已启用;InterventionDeprecationCrash)。我还使用了 safari 和 firefox,并在控制台中收到了弃用警报,但发送的唯一报告是 CSP 报告。

【问题讨论】:

    标签: http nginx http-headers content-security-policy


    【解决方案1】:

    Reporting API 旨在脱离您的网络应用。 浏览器捕获、排队和批处理,然后发送报告 在最合适的时间自动进行。内部发送报告 通过浏览器,因此几乎没有性能问题(例如 与您的应用程序的网络争用)在使用 Reporting API 时。 也无法控制浏览器何时发送排队报告。

    根据文档,这似乎无法克服。

    https://developers.google.com/web/updates/2018/09/reportingapi#sending

    【讨论】:

      猜你喜欢
      • 2023-04-02
      • 2011-03-02
      • 2012-06-09
      • 2021-12-23
      • 1970-01-01
      • 1970-01-01
      • 2023-03-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多