HTMLAnchorElement:attributionSrc 属性

安全上下文:此功能仅在安全上下文(HTTPS)中可用,在某些或所有支持的浏览器中。

实验性:这是一个实验性技术
在生产环境中使用此功能之前,请仔细查看浏览器兼容性表

attributionSrcHTMLAnchorElement 接口的一个属性,用于以编程方式获取和设置 attributionsrc 属性,该属性位于 <a> 元素上,并反映该属性的值。attributionsrc 指定您希望浏览器发送 Attribution-Reporting-Eligible 标头。在服务器端,这用于触发在响应中发送 Attribution-Reporting-Register-Source 标头,以注册基于导航的归因源

浏览器在收到导航响应时,会存储与基于导航的归因源关联的源数据(如 Attribution-Reporting-Register-Source 响应标头中提供的那样)。

有关更多详细信息,请参阅归因报告 API

注意:<a> 元素不能用作归因触发器,只能用作源。

字符串。您可以获取和设置此属性的两个版本

  • 空字符串,即 aElem.attributionSrc=""。这表示您希望将 Attribution-Reporting-Eligible 标头发送到与 href 属性指向的相同服务器。当您在同一服务器上处理归因源注册时,这很好用。
  • 包含一个或多个 URL 的值,例如
    js
    aElem.attributionSrc =
      "https://a.example/register-source https://b.example/register-source";
    
    这在请求的资源不在您控制的服务器上,或者您只想在不同的服务器上处理归因源注册的情况下很有用。在这种情况下,您可以将一个或多个 URL 指定为 attributionSrc 的值。当资源请求发生时,除了资源来源之外,Attribution-Reporting-Eligible 标头将发送到 attributionSrc 中指定的 URL。然后,这些 URL 可以使用 Attribution-Reporting-Register-Source 来响应以注册源。

    注意:指定多个 URL 意味着可以在同一功能上注册多个归因源。例如,您可能有不同的广告系列需要衡量其成功率,这涉及到在不同的数据上生成不同的报告。

示例

设置空 attributionSrc

html
<a href="https://shop.example"> Click to visit our shop </a>
js
const aElem = document.querySelector("a");
aElem.attributionSrc = "";

设置包含 URL 的 attributionSrc

html
<a href="https://ourshop.example"> Click to visit our shop </a>
js
// encode the URLs in case they contain special characters
// such as '=' that would be improperly parsed.
const encodedUrlA = encodeURIComponent("https://a.example/register-source");
const encodedUrlB = encodeURIComponent("https://b.example/register-source");

const aElem = document.querySelector("a");
aElem.attributionSrc = `${encodedUrlA} ${encodedUrlB}`;

规范

规范
归因报告
# dom-htmlattributionsrcelementutils-attributionsrc

浏览器兼容性

BCD 表仅在启用了 JavaScript 的浏览器中加载。

另请参阅