Edge 扩展的操作类型

操作类型库模块旨在执行操作 – 任何操作。该操作具体做什么完全由您来决定。您想要发送信标,还是要转换事件中的某些数据?

重要

本文档介绍了 Edge 扩展的操作类型。如果您正在开发 Web 扩展,请另外参阅关于 Web 扩展的操作类型的指南。

另外,本文档假设您熟悉库模块以及库模块在 Platform Launch 扩展中的集成方式。如果您需要查看简介,请在返回本指南之前参阅关于库模块格式的概述。

例如,如果要将一些数据转发到第三方端点,您的模块可能会如下所示:

module.exports = (context) {
  const { arc, utils } = context;
  const { fetch } = utils;
  const { event: { xdm } } = arc;
  return fetch('http://someendpoint.com', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json'
    },
    body: JSON.stringify(xdm)
  })
};

现在,假定您希望可由 Adobe Experience Platform Launch 用户配置端点。您可以允许用户输入一个端点,然后将该端点保存到设置对象,该对象如下所示:

{
  "endpoint": "http://someendpoint.com"
}

要对用户定义的端点执行操作,您的模块需要更改为:

module.exports = (context) {
  const { arc, utils } = context;
  const { fetch } = utils;
  const { event: { xdm } } = arc;
  const  { endpoint } = settings;
  return fetch(endpoint, {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json'
    },
    body: JSON.stringify(xdm)
  })
};

操作结果

操作模块返回的结果可以是任何内容。如果该操作需要执行异步任务,您可以返回一个 promise,该 promise 在得到解析后会返回您所需的结果。

操作结果存储在 ruleStash 键中,所有模块均可通过 context 参数 (context.arc.ruleStash) 使用该键。您可以在此处了解关于 ruleStash 的更多信息。

在此页面上

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free