user_scripts

警告:此键由旧的 userScripts API 使用,该 API 可供使用 Manifest V2 的扩展程序使用。对于可用于 Manifest V3 的 userScripts API 版本,不需要此键。

类型 Object
必填
Manifest 版本 2
示例
json
  "user_scripts": {
    "api_script": "apiscript.js",
  }

指示浏览器加载扩展程序中打包的脚本,称为 API 脚本。此脚本用于导出可供用户脚本使用的一组自定义 API 方法。API 脚本路径(相对于 manifest.json 文件)在 "api_script" 中定义为 string

注意:即使未指定 API 脚本,user_script 键也是 userScripts API 正常运行所必需的。例如:user_scripts: {}

API 脚本

  • 在内容进程中运行。
  • 可以访问与其所附加的网页相关的 window 和 document 全局变量。
  • 可以访问通常在内容脚本中可用的 WebExtension API 的相同子集。

脚本由 userScripts.register()matches 中定义的任何网页上自动执行。但是,这是在创建用户脚本沙箱对象以及导出自定义 API 方法之前。

要导出自定义 API 方法,脚本会监听 userScripts.onBeforeScript,然后导出自定义 API 方法。

并非每个用户脚本都需要使用所有自定义 API 方法。因此,您可以在运行 userScripts.register() 时,在 scriptMetadata 中包含所需 API 的详细信息。然后,API 脚本通过 userScripts.onBeforeScript 监听器收到的 script 参数(作为 script.metadata)访问 scriptMetadata

浏览器兼容性

另见