XMLHttpRequest:setAttributionReporting() 方法

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

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

setAttributionReporting() 方法是 XMLHttpRequest 接口的方法,它指示您希望请求的响应能够注册基于 JavaScript 的 归因来源归因触发器

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

语法

js
setAttributionReporting(options)

参数

options

提供归因报告选项的对象,其中包含以下属性

eventSourceEligible

布尔值。如果设置为 true,则请求的响应有资格注册归因来源。如果设置为 false,则没有资格。

triggerEligible

布尔值。如果设置为 true,则请求的响应有资格注册归因触发器。如果设置为 false,则没有资格。

返回值

无(undefined)。

异常

InvalidStateError DOMException

如果相关的 XMLHttpRequest 尚未 打开 或已 发送,则抛出此异常。

TypeError DOMException

如果 归因报告 API 的使用被 attribution-reporting Permissions-Policy 阻止,则抛出此异常。

示例

js
const attributionReporting = {
  eventSourceEligible: true,
  triggerEligible: false,
};

function triggerSourceInteraction() {
  const req = new XMLHttpRequest();
  req.open("GET", "https://shop.example/endpoint");
  // Check availability of setAttributionReporting() before calling
  if (typeof req.setAttributionReporting === "function") {
    req.setAttributionReporting(attributionReporting);
    req.send();
  } else {
    throw new Error("Attribution reporting not available");
    // Include recovery code here as appropriate
  }
}

// Associate the interaction trigger with whatever
// element and event makes sense for your code
elem.addEventListener("click", triggerSourceInteraction);

规范

规范
归因报告
# dom-xmlhttprequest-setattributionreporting

浏览器兼容性

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

另请参阅