面向开发者的 Firefox 128

本文提供有关 Firefox 128 中影响开发者的变更信息。Firefox 128 于 2024 年 7 月 9 日 发布。

面向网页开发者的变更

HTML

  • <base> 元素的 target 属性现在禁止 ASCII 换行符、制表符或 < 字符,如果存在任何这些字符,则将值更改为 _blank。这可以防止使用未关闭的 target 属性的悬空标记注入攻击 (Firefox 错误 1835157)。

CSS

移除

  • 已删除砌体布局属性 align-tracksjustify-tracks。这些属性仅在 Firefox 中实现,并且最近已从规范中 删除 (Firefox 错误 1900195)。

JavaScript

HTTP

API

媒体、WebRTC 和 Web 音频

移除

WebDriver 符合性 (WebDriver BiDi、Marionette)

通用

  • 我们现在支持扩展的“unhandledPromptBehavior”功能,它可以是字符串 (WebDriver classic) 或 JSON 对象 (WebDriver BiDi)。对象类型为 WebDriver BiDi 提供了更多功能,例如处理“beforeunload”提示。(Firefox 错误 1884650)

WebDriver BiDi

  • 添加了对 WebDriver 会话的“BiDi 标志”的支持,以与 WebDriver BiDi 规范保持一致。这使得能够识别为 WebDriver BiDi 创建或升级的会话。(Firefox 错误 1898719)
  • 添加了对 network.continueRequest 命令的几个参数的支持,这使得能够在请求通过网络发送之前修改请求的标头、cookie、方法和正文。(Firefox 错误 1850680)
  • 添加了对 permissions.setPermission 命令中的 userContext 参数的支持,这使得能够将权限隔离到特定的用户上下文 (在 Firefox 中实现为容器)。(Firefox 错误 1894217)
  • 修复了 browsingContext.navigate 中的一个错误,该错误会导致导航错误加载错误页面,并导致后续命令失败。(Firefox 错误 1878690)
  • 我们修复了为重定向发出 network.responseCompleted 事件的顺序。原始请求的 responseCompleted 现在始终在重定向的事件之前发出。(Firefox 错误 1879580)
  • 为了与当前 Firefox 的行为保持一致,我们引入了一个解决方法,即不会对使用“storage.setCookie”命令添加的、与目标上下文加载页面相同域的 cookie 进行分区。(Firefox 错误 1898222)
  • 如果指定文件不存在,input.setFiles 命令已更新为抛出 UnsupportedOperation 错误。(Firefox 错误 1887644)

Marionette

  • 添加了对 WebDriver 会话的“HTTP 标志”的支持,以与 WebDriver 经典规范保持一致。这允许识别为 WebDriver 经典创建的会话。(Firefox 错误 1884090)
  • 添加了对 WebDriver 经典中的权限 API 的支持。(Firefox 错误 1524074)

面向附加组件开发者的变更

实验性网页功能

这些功能已在 Firefox 128 中发布,但默认情况下处于禁用状态。若要尝试使用这些功能,请在 about:config 页面中搜索相应的首选项,并将其设置为 true。你可以在 实验性功能 页面上找到更多此类功能。

  • image/jxl MIME 类型在默认请求和图像请求的 Accept 标头中:image.jxl.enabled。HTTP Accept 标头在 默认请求和图像请求 中可以配置为指示对 image/jxl MIME 类型支持。(Firefox 错误 1711622)
  • 具有独立分区状态的 Cookie (CHIPS):network.cookie.CHIPS.enabledCHIPS 或“分区 cookie”允许开发者使用 Set-Cookie HTTP 标头的 partitioned 指令将 cookie 选中到分区存储中。设置后,cookie 对每个顶级站点具有单独的存储,并且只能在其设置的同一顶级站点及其子域中读取。这阻止了跨站点跟踪,同时仍然允许合法使用第三方 cookie,例如在站点的不同子域之间持久化嵌入地图或聊天小部件的状态。(Firefox 错误 1898253)
  • 隐私保护归因 API (PPA):dom.origin-trials.private-attribution.statePPA API 提供了一种替代用户跟踪的广告归因方法,使用新的 navigator.privateAttribution 对象,以及 saveImpression()measureConversion() 方法。在 说明文档 中详细了解 PPA。此实验可以通过 来源试用 为网站启用,或者通过将首选项设置为 1 在浏览器中启用。(Firefox 错误 1900929)

旧版本