在 safari 扩展中调试后台脚本

Debugging background scripts in safari extension

我正在开发一个自定义的 Safari 扩展,想调试后台脚本。我不确定该怎么做?理想情况下,如果有一种方法可以进入后台脚本,那就太好了。但是当我尝试进入后台调用时,Safari 调试器只是进入下一行。后台脚本中的 console.log 不会打印到控制台(这是我通过右键单击作为扩展一部分的弹出窗口然后点击检查启动的控制台)。

这方面的任何帮助都会很棒。谢谢。

万一这对某人有用 - 我想出了一种在后台脚本中查看控制台语句的方法。打开扩展构建器并单击检查全局页面。转到控制台选项卡,后台脚本中的 console.log 消息将打印在该控制台中。

现在您可以使用 Safari Preview 来调试您的 Safari 应用程序扩展。在控制台的右下角有一个 select 扩展容器的控件。

这是一个老问题,询问不同类型的 Safari 扩展,但我认为添加更新的答案可能会有所帮助,因为 Safari (v14) 支持 Web 扩展 API(类似于API 所有其他主要浏览器都使用)。

调试后台脚本现已内置到工具栏的 Safari 菜单中:“开发”=>“Web 扩展背景页面”=> select 您的(已启用)扩展。这应该会打开带有所有后台脚本的开发工具,您可以在其中设置断点、检查网络选项卡等。

附带说明一下,您可以调试扩展程序的弹出窗口,方法是打开它,右键单击弹出窗口并单击“检查元素”。